4Sep

Hvordan komprimere og pakke ut filer ved hjelp av tjærekommandoen på Linux

Tar-kommandoen på Linux brukes ofte til å lage. tar.gz eller. tgz arkivfiler, også kalt "tarballs." Denne kommandoen har et stort antall alternativer, men du trenger bare å huske noen få bokstaver for å raskt lage arkiver medtjære. Tar-kommandoen kan trekke ut de resulterende arkivene også.

GNU-tar-kommandoen som følger med Linux-distribusjoner, har integrert komprimering. Det kan opprette et. tar-arkiv og komprimere det med gzip eller bzip2-komprimering i en enkelt kommando. Det er derfor den resulterende filen er en. tar.gz-fil eller. tar.bz2-fil.

Komprimer en hel katalog eller en enkel fil

Bruk følgende kommando for å komprimere en hel mappe eller en enkelt fil på Linux. Det vil også komprimere alle andre mapper i en katalog du spesifiserer - med andre ord fungerer den rekursivt.

tar -czvf navn-av-arkiv.tar.gz /path/to/ katalog-eller-fil

Her er hva disse byttene egentlig betyr:

  • -c: C reater et arkiv.
  • -z: Komprimer arkivet med g z ip.
  • -v: Vis fremgang i terminalen mens du lager arkivet, også kjent som " v erbose" -modus. V er alltid valgfritt i disse kommandoene, men det er nyttig.
  • -f: Lar deg spesifisere arkivet f ilename.

La oss si at du har en katalog som heter "ting" i gjeldende katalog, og du vil lagre den i en fil med navnet archive.tar.gz. Du vil kjøre følgende kommando:

tar -czvf archive.tar.gz ting

Eller, la oss si at det er en katalog på /usr/local/ noe på det nåværende systemet, og du vil komprimere det til en fil kalt archive.tar.gz. Du vil kjøre følgende kommando:

tar -czvf archive.tar.gz /usr/local/ noe

Komprimer flere kataloger eller filer samtidig

Mens tjære ofte brukes til å komprimere en enkelt katalog, kan du også bruke den til å komprimere flere kataloger, flereindividuelle filer, eller begge deler. Bare gi en liste over filer eller kataloger i stedet for en enkelt. For eksempel, la oss si at du vil komprimere /home/ubuntu/-nedlastingsmappen, /usr/local/-innholdskatalogen og /home/ubuntu/Documents/ notes.txt-filen. Du vil bare kjøre følgende kommando:

tar -czvf archive.tar.gz /home/ubuntu/ Nedlastinger /usr/local/ ting /home/ubuntu/Documents/ notes.txt

Bare oppfør så mange kataloger eller filer som du vil sikkerhetskopiere.

Ekskluder kataloger og filer

I noen tilfeller kan det hende du ønsker å komprimere en hel katalog, men ikke inneholde bestemte filer og kataloger. Du kan gjøre det ved å legge til en - ekskluder bryter for hver katalog eller fil du vil ekskludere.

For eksempel, la oss si at du vil komprimere /home/ ubuntu, men du vil ikke komprimere /home/ubuntu/ nedlastinger og /home/ubuntu/. cache kataloger. Slik gjør du det:

tar -czvf archive.tar.gz /home/ ubuntu --exclude = /home/ubuntu/ Nedlastinger --exclude = /home/ubuntu/. cache

Exexlude-bryteren er veldig kraftig. Det tar ikke navn på kataloger og filer - det aksepterer faktisk mønstre. Det er mye mer du kan gjøre med det. For eksempel kan du arkivere en hel katalog og ekskludere alle. mp4-filer med følgende kommando:

tar -czvf archive.tar.gz /home/ ubuntu --exclude = *. Mp4

Bruk bzip2-komprimering i stedet

Mens gzip-komprimering er hyppigstbrukes til å lage. tar.gz eller. tgz filer, tar tjære også støtte for bzip2-komprimering. Dette lar deg lage bzip2-komprimerte filer, ofte kalt. tar.bz2,. tar.bz eller. tbz filer. For å gjøre det, erstatt bare -z for gzip i kommandoene her med a -j for bzip2.

Gzip er raskere, men komprimerer vanligvis litt mindre, så du får en noe større fil. Bzip2 er tregere, men det komprimerer litt mer, så du får en noe mindre fil. Gzip er også mer vanlig, med noen nedpakket Linux-systemer, inkludert gzip-støtte som standard, men ikke bzip2-støtte. Generelt er gzip og bzip2 imidlertid praktisk talt det samme, og begge vil fungere på samme måte.

For eksempel, i stedet for det første eksempelet vi ga for å komprimere tingmappen, skulle du kjøre følgende kommando:

tar -cjvf archive.tar.bz2 ting

Utdrag et arkiv

Når du har et arkiv, kan du trekke det utmed tar-kommandoen. Følgende kommando vil trekke ut innholdet i archive.tar.gz til gjeldende katalog.

tar -xzvf archive.tar.gz

Det er det samme som arkivskapningskommandoen vi brukte ovenfor, bortsett fra -x-bryteren erstatter -c-bryteren. Dette spesifiserer at du vil e x -området et arkiv istedenfor å opprette en.

Du vil kanskje trekke ut innholdet i arkivet til en bestemt katalog. Du kan gjøre det ved å legge til -C-bryteren til slutten av kommandoen. For eksempel vil følgende kommando trekke ut innholdet i arkiv.tar.gz-filen til / tmp-katalogen.

tar -xzvf archive.tar.gz -C / tmp

Hvis filen er en bzip2-komprimert fil, erstatt "z" i kommandoene ovenfor med en "j".

Dette er den enkleste mulige bruken av tar-kommandoen. Kommandoen inneholder et stort antall ekstra alternativer, så vi kan ikke muligens liste dem alle her. For mer informasjon. Kjør info tar kommandoen på skallet for å se tar kommandoen detaljerte informasjonssiden. Trykk på q -tasten for å avslutte informasjonssiden når du er ferdig. Du kan også lese tarens manual online.

Hvis du bruker et grafisk Linux-skrivebord, kan du også bruke filkomprimeringsverktøyet eller filbehandleren som følger med skrivebordet ditt, for å lage eller trekke ut. tar-filer. På Windows kan du pakke ut og lage. tar arkiver med gratis 7-Zip-verktøyet.