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

    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 med tjære . Tar-kommandoen kan trekke ut de resulterende arkivene også.

    GNU-tar-kommandoen som følger med Linux-distribusjoner, har integrert komprimering. Den 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 enkelt fil

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

    tar -czvf navn-av-arkiv.tar.gz / bane / til / katalog eller fil

    Her er hva disse bryterne egentlig betyr:

    • -c: Create et arkiv.
    • -z: Komprimer arkivet med gzip.
    • -v: Vis fremgang i terminalen mens du lager arkivet, også kjent som "verbose "-modus. V er alltid valgfritt i disse kommandoene, men det er nyttig.
    • -f: Lar deg spesifisere fArkivets navn.

    La oss si at du har en katalog med navnet "stuff" i den nåværende katalogen, 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 / something

    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, flere enkeltfiler 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 katalogen / home / ubuntu / Downloads, mappen / usr / local / stuff, 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 / stuff /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 være lurt å komprimere en hel katalog, men ikke med visse filer og kataloger. Du kan gjøre det ved å legge til en --utelukke bytt 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 / Downloads og /home/ubuntu/.cache katalogene. Slik gjør du det:

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

    De --utelukke 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 oftest brukes 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 eksemplet vi ga for å komprimere tingmappen, ville du kjøre følgende kommando:

    tar-cjvf arkiv.tar.bz2 ting

    Trekk ut et arkiv

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

    tar -xzvf archive.tar.gz

    Det er det samme som arkivskapelseskommandoen vi brukte ovenfor, bortsett fra -x bytte erstatter -c bytte om. Dette spesifiserer at du vil exSkriv et arkiv i stedet for å lage en.

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

    tar -xzvf arkiv.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 flere alternativer, så vi kan ikke muligens liste dem alle her. For mer informasjon. kjøre info tjære kommandoen på skallet for å se tar kommandoen detaljerte informasjonssiden. trykk q nøkkel 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.