logo

Hur man komprimerar filer i Linux | Tar kommando

Filkomprimering är en grundläggande uppgift för att hantera och överföra data effektivt på ett Linux-system. Tar-kommandot, kort för Tape Archive, är ett kraftfullt verktyg som låter användare skapa komprimerade och arkiverade filer. I den här omfattande guiden kommer vi att utforska de olika alternativen och exemplen på att använda Tar-kommandot för att komprimera filer på ett Linux-system.

Innehållsförteckning



tar kommando för att komprimera filer i Linux

Linux 'tar' står för tape archive, som används för att skapa arkiv och extrahera arkivfilerna. tar-kommandot i Linux är ett av de viktiga kommandona som tillhandahåller arkiveringsfunktioner i Linux. Vi kan använda Linux tar-kommandot för att skapa komprimerade eller okomprimerade arkivfiler och även underhålla och ändra dem.

Syntax för kommandot 'tar' i Linux

tar [options] [archive-file] [file or directory to be archived]>

Här ,

  • tar> : Själva kommandot.
  • [options]> : Valfria flaggor eller inställningar som ändrar beteendet hostar>kommando.
  • [archive-file]> : Namnet på arkivfilen du skapar eller arbetar med.
  • [file or directory to be archived]> : Filen eller katalogen du vill inkludera i arkivet.

En arkivfil är en fil som består av en eller flera filer tillsammans med metadata. Arkivfiler används för att samla ihop flera datafiler till en enda fil för enklare portabilitet och lagring, eller helt enkelt för att komprimera filer för att använda mindre lagringsutrymme.



alternativ

Beskrivning

-c



Skapar ett arkiv genom att bunta ihop filer och kataloger.

-x

Extraherar filer och kataloger från ett befintligt arkiv.

-f

Anger filnamnet på arkivet som ska skapas eller extraheras.

-t

Visar eller listar filerna och katalogerna som finns i ett arkiv.

instansierar java

-i

Arkiverar och lägger till nya filer eller kataloger till ett befintligt arkiv.

-i

Visar utförlig information, ger detaljerad utdata under arkivering eller extraheringsprocessen.

-A

Sammanfogar flera arkivfiler till ett enda arkiv.

-Med

shweta tiwari skådespelare

Använder gzip-komprimering när du skapar en tar-fil, vilket resulterar i ett komprimerat arkiv med tillägget '.tar.gz'.

-j

Använder bzip2-komprimering när du skapar en tar-fil, vilket resulterar i ett komprimerat arkiv med tillägget '.tar.bz2'.

-I

Verifierar integriteten hos en arkivfil och säkerställer att dess innehåll inte är skadat.

-r

Uppdaterar eller lägger till filer eller kataloger till ett redan befintligt arkiv utan att återskapa hela arkivet.

Exempel på tar-kommando för att komprimera filer i Linux

1. Skapa ett okomprimerat tar-arkiv med alternativet -cvf

Detta kommando skapar en tar-fil som heter file.tar som är arkivet för alla .c-filer i den aktuella katalogen.

tar cvf file.tar *.c>
  • '-c': Skapar ett nytt arkiv.
  • '-v': Visar utförlig utdata, som visar arkiveringsprocessens förlopp.
  • '-f': Anger filnamnet på arkivet

Utgång:

os2.c os3.c os4.c>

2. Extrahera filer från Arkiv med alternativet -xvf

Detta kommando extraherar filer från Arkiv.

tar xvf file.tar>
  • '-x': Extraherar filer från ett arkiv.
  • '-v': Visar utförlig utdata under extraktionsprocessen.
  • '-f': Anger filnamnet för arkivet.

Utgång:

os2.c os3.c os4.c>

3. gzip-komprimering på tar-arkivet, med alternativet -z

Detta kommando skapar en tar-fil som heter file.tar.gz som är arkivet för .c-filer.

tar cvzf file.tar.gz *.c>
  • '-z': Använder gzip-komprimering.
  • '-j': Använder bzip2-komprimering.
  • '-J': Använder xz-komprimering.

4. Extrahera ett gzip tar-arkiv *.tar.gz med alternativet -xvzf:

Detta kommando extraherar filer från tar arkiverade file.tar.gz-filer.

tar xvzf file.tar.gz>

5. Skapa en komprimerad tar-arkivfil i Linux med alternativet -j

Detta kommando komprimerar och skapar arkivfiler som är mindre än storleken på gzip. Både komprimera och dekomprimera tar längre tid än gzip.

tar cvfj file.tar.tbz example.cpp>

Produktion:

tar cvfj file.tar.tbz example.cpp example.cpp  tar tvf file.tar.tbz -rwxrwxrwx root/root 94 2017-09-17 02:47 example.cpp>

6. Ta bort en enda tar-fil eller angiven katalog i Linux:

Detta kommando tar bort en fil i den aktuella katalogen eller i en specificerad katalog med alternativet -C.

algoritmer binär sökning
tar xvfj file.tar  or  tar xvfj file.tar -C   path of file in directory>

7. Ta bort flera .tar-, .tar.gz-, .tar.tbz-filer i Linux:

Detta kommando extraherar eller tar bort flera filer från arkivfilen tar, tar.gz och tar.bz2. Till exempel kommer kommandot ovan att extrahera filA filB från arkivfilerna.

tar xvf file.tar 'fileA' 'fileB'  or  tar zxvf file1.tar.gz 'fileA' 'fileB' or  tar jxvf file2.tar.tbz 'fileA' 'fileB'>

8. Kontrollera storleken på befintlig tar-, tar.gz-, tar.tbz-fil i Linux:

Kommandot ovan visar storleken på arkivfilen i kilobyte (KB).

tar czf file.tar | wc -c or  tar czf file1.tar.gz | wc -c or  tar czf file2.tar.tbz | wc -c>

9. Uppdatera befintlig tar-fil i Linux

tar rvf file.tar *.c>

Produktion:

os1.c>

10. Lista innehållet och ange tarfilen med alternativet -tf

Detta kommando kommer att lista hela listan med arkiverade filer. Vi kan också lista för specifikt innehåll i en tarfil

tar tf file.tar>

Produktion:

example.cpp>

11. Applicera pipe till genom 'grep kommando' för att hitta det vi letar efter

Detta kommando kommer endast att lista för den nämnda texten eller bilden i grep från arkiverad fil.

tar tvf file.tar | grep '  text to find  '  or tar tvf file.tar | grep '  filename.file extension  '>

12. Vi kan skicka ett filnamn som ett argument för att söka i en tarfil:

Detta kommando visar de arkiverade filerna tillsammans med deras detaljer.

tar tvf file.tar filename>

13. Visa arkivet med alternativet -tvf

tar tvf file.tar>

Produktion:

-rwxrwxrwx root/root 191 2017-09-17 02:20 os2.c -rwxrwxrwx root/root 218 2017-09-17 02:20 os3.c -rwxrwxrwx root/root 493 2017-09-17 02:20 os4.c>

Vad är jokertecken i Linux

Alternativt kallat 'jokertecken' eller 'jokertecken', är ett jokertecken en symbol som används för att ersätta eller representera ett eller flera tecken. Jokertecken är vanligtvis antingen en asterisk (*), som representerar ett eller flera tecken, eller frågetecken (?), som representerar ett enda tecken.

14. För att söka efter en bild i .webp'ltr'>Detta extraherar endast filer med filtillägget .webp'ltr'> Notera: I ovanstående kommandon används * istället för filnamn för att ta alla filer som finns i den specifika katalogen.

Zip kommando för att komprimera filer i Linux

I sfären av Linux-filkomprimering är ` zip> `> kommando framstår som ett kraftfullt och användarvänligt verktyg. Skiljer sig från ` tar`> kommando, ` zip`> specialiserar sig på att skapa komprimerade filer samtidigt som det ursprungliga innehållets integritet bevaras. Den enkla syntaxen för ` zip`> kommandot förenklar komprimeringsprocessen:

Grundläggande syntax :

zip [options] zipfile files/directories>
  • [> options> ]>: Valfria flaggor eller inställningar förzip>kommando.
  • zipfile> : Namnet på ZIP-arkivet som ska skapas.
  • files/directories> : Filerna eller katalogerna som ska inkluderas i ZIP-arkivet.
zip ./bigfile.zip bigfile>

Denna enda kodrad kapslar in essensen av ` zip`> kommandot, komprimera filen ` bigfile`> och genererar en ny fil, ` bigfile.zip`> , som innehåller den komprimerade versionen av det ursprungliga innehållet. Noterbart är att originalfilen förblir orörd, vilket garanterar datasäkerhet under komprimeringsprocessen.

binärt träd i java

Den användarvänliga karaktären av ` zip> `>kommando gör det till ett tillgängligt alternativ för dem som söker en enkel lösning för att skapa komprimerade arkiv. Oavsett om du komprimerar en enda fil eller flera filer, är enkelheten och effektiviteten i ` zip`> kommandot bidrar till dess popularitet bland Linux-användare. Som ett mångsidigt verktyg i komprimeringsverktygssatsen, ` zip`> erbjuder en sömlös balans mellan användarvänlighet och effektiv filkomprimering.

Gzip kommando för att komprimera filer i Linux

I landskapet med Linux-komprimeringsverktyg är ` gzip> `> kommando utmärker sig som ett enkelt och mycket effektivt verktyg. Dess användning är elegant enkel – ange filnamnet och ` gzip`> komprimerar den sömlöst på plats. Detta kan uppnås med ett enda kommando

Grundläggande syntax:

gzip [options] filename>
  • [options]>: Valfria flaggor eller inställningar som du kanske vill tillämpa.
  • filename>: Namnet på filen du vill komprimera.
gzip bigfile>

Till skillnad från vissa komprimeringskommandon som genererar en separat komprimerad fil, ` gzip`> fungerar på plats. Med andra ord krypterar den originalfilen och ersätter den med den komprimerade versionen. Denna inneboende enkelhet är ett nyckelattribut som positionerar ` gzip`> som ett utmärkt val för användare som söker en snabb och effektiv filkomprimeringslösning.

Komprimeringsfunktionen på plats minskar inte bara behovet av att hantera flera filer utan säkerställer också en smidig integrering i olika arbetsflöden. Detta gör ` gzip`> särskilt väl lämpad för scenarier där enkelhet och snabbhet är av största vikt. Oavsett om du komprimerar en enda fil eller flera filer, är den enkla karaktären av ` gzip`> kommandot bidrar till dess popularitet bland Linux-användare, vilket gör det till ett pålitligt och effektivt komprimeringsverktyg i olika sammanhang.

Bzip2 Kommando för att komprimera filer i Linux

I det intrikata landskapet av Linux-filkomprimering är ` bzip2> `> kommando presenterar sig som ett kraftfullt och mångsidigt verktyg, som har likheter med sin motsvarighet, ` gzip`> . Fungerar på ett sätt som liknar ` gzip`> , den ` bzip2`> kommandot komprimerar filer på plats och bevarar endast originalfilen. Enkelheten i dess tillämpning illustreras av följande exempel:

Grundläggande syntax:

bzip2 [options] filename>

Här, ` options`> representerar eventuella ytterligare flaggor eller inställningar som du kanske vill tillämpa, och ` filename`> är namnet på filen du vill komprimera. Det grundläggande kommandot utan alternativ komprimerar filen på plats och ersätter originalfilen med den komprimerade versionen.

bzip2 bigfile>

Detta kortfattade kommando initierar komprimeringsprocessen, vilket resulterar i skapandet av ` bigfile.bz2`> — den komprimerade iterationen av originalfilen. Ungefär som beslutet mellan ` gzip`> och ` bzip2`> beror ofta på specifika användningsfall, valet mellan dessa två kommandon nyanseras och påverkas av faktorer som typen av data som komprimeras och det önskade komprimeringsförhållandet.

Medan båda kommandona delar det grundläggande konceptet med komprimering på plats, ` bzip2`> är känt för sin distinkta komprimeringsalgoritm, som ofta uppnår högre kompressionsförhållanden jämfört med ` gzip`> . Följaktligen kan användare välja ` bzip2`> när du prioriterar minskning av filstorleken och är villiga att byta ut en viss komprimeringshastighet. Denna nyanserade beslutsprocess understryker flexibiliteten i ` bzip2`> kommando för att tillgodose olika komprimeringskrav inom Linux-ekosystemet.

XZ kommando för att komprimera filer i Linux

En relativ nykomling på komprimeringsscenen, ` xz> `> kommandot är känt för sina imponerande komprimeringsmöjligheter. Även om det kan ta längre tid för stora filer, är komprimeringsresultaten anmärkningsvärda:

Grundläggande syntax:

xz [options] filename>
  • [options]> : Valfria flaggor eller inställningar som du kanske vill tillämpa.
  • filename> : Namnet på filen du vill komprimera.
xz bigfile>

Den ` bigfile.xz`> visar den komprimerade versionen av filen. ` xz`> har vunnit popularitet för sin förmåga att uppnå betydande komprimeringsförhållanden, vilket gör det till ett toppval för dem som prioriterar minskning av filstorleken.

Slutsats

Den här artikeln handlar om att göra filer mindre i Linux, och det är som att låsa upp coola trick med kommandot Tape Archive (Tar). Vi lärde oss hur Tar kan bunta ihop filer och även klämma ner dem med hjälp av saker som gzip, bzip2 och xz. Vi slutade inte där – vi pratade också om vänliga verktyg som zip och enkla kommandon som gzip, bzip2 och xz. Detta hjälper dig att välja vad som är bäst för dig, oavsett om du vill att saker ska vara superenkla, fungera snabbt, spara mycket utrymme eller göra imponerande saker. Så om du använder Linux hjälper den här guiden dig att göra smarta saker med dina filer, vilket gör dem lätta att hantera.