Android

Tar-kommando i Linux (skapa och extrahera arkiv)

How to create,extract,compress tar files in linux ubuntu [ Explained ]

How to create,extract,compress tar files in linux ubuntu [ Explained ]

Innehållsförteckning:

Anonim

tar kommandot används för att skapa tjärarkiv genom att konvertera en grupp filer till ett arkiv. Det har också förmågan att extrahera tjärarkiv, visa en lista över de filer som ingår i arkivet, lägga till ytterligare filer i ett befintligt arkiv samt olika andra typer av operationer.

Tar designades ursprungligen för att skapa arkiv för att lagra filer på magnetband, varför det har namnet “ T ape AR gräslök”.

I denna handledning visar vi dig hur du använder tar att extrahera, lista och skapa tjärarkiv genom praktiska exempel och detaljerade förklaringar av de vanligaste tjäralternativen.

Tar Command Syntax

Det finns två versioner av tjära, BSD-tjära och GNU-tjära med några funktionella skillnader mellan. De flesta Linux-system levereras med GNU-tar förinstallerade som standard.

Den allmänna syntaxen för tar är följande:

tar

  • OPERATION - Endast ett operationsargument är tillåtet och krävs. De mest använda operationerna är:
    • --create ( -c ) - Skapa ett nytt tjärarkiv. --extract ( -x ) - Extrahera hela arkivet eller en eller flera filer från ett arkiv. --list ( -t ) - Visa en lista över de filer som ingår i arkivet
    OPTIONS - De mest använda operationerna är:
    • --verbose ( -v ) - Visa filerna som bearbetas av tar-kommandot. --file=archive=name ( -f archive-name ) - Anger namnet på arkivfilen.
    ARCHIVE_NAME - Namnet på arkivet. FILE_NAME(s) - En FILE_NAME(s) lista över filnamn som ska extraheras från arkivet. Om inte arkivet extraheras hela arkivet.

När du utför tjärkommandon kan du använda den långa eller korta formen av tar och alternativ. De långa formerna är mer läsbara medan de korta formulärerna är snabbare att skriva. Alternativen med lång form är förinställda med ett dubbelt bindestreck ( -- ). Alternativen med kortform är förinställda med ett enda streck ( - ) som kan utelämnas.

Skapa Tar Archive

Tar stöder ett stort antal komprimeringsprogram som gzip , bzip2 , lzip , lzma , lzop , xz och compress . När du skapar komprimerade tjärarkiv är det en accepterad konvention att lägga till kompressorsuffixet till arkivfilnamnet. Om till exempel ett arkiv har komprimerats med gzip ska det kallas archive.tar.gz.

För att skapa ett tjärarkiv använder du alternativet -c följt av -f och namnet på arkivet.

Till exempel, för att skapa ett arkiv med namnet archive.tar från filerna som heter file1 , file2 , file3 , kör du följande kommando:

tar -cf archive.tar file1 file2 file3

Här är det motsvarande kommandot med hjälp av alternativ i lång form:

tar --create --file=archive.tar file1 file2 file3

Du kan skapa arkiv från innehållet i ett eller flera kataloger eller filer. Som standard arkiveras kataloger rekursivt om --no-recursion alternativet --no-recursion anges.

Följande exempel skapar ett arkiv med namnet user_backup.tar för /home/user :

tar -cf backup.tar /home/user

Använd alternativet -v om du vill se filerna som bearbetas.

Skapa Tar Gz-arkiv

Gzip är den mest populära algoritmen för att komprimera tjärfiler. När man komprimerar tjärarkiv med gzip bör tar.gz sluta med antingen tar.gz eller tgz .

Alternativet -z berättar tar att komprimera arkivet med gzip algoritmen när den skapas. Till exempel, för att skapa ett tar.gz-arkiv från givna filer använder du följande kommando:

tar -czf archive.tar.gz file1 file2

Skapa Tar Bz2 Archive

En annan populär algoritm för komprimering av tarfiler är bzip2. När man komprimerar tjärarkiv med bzip2 bör tar.bz2 sluta med antingen tar.bz2 eller tbz .

När -j alternativet anges tar tar bzip2 algoritmen för att komprimera arkivet. Följande kommando skapar ett tar.bz2 arkiv från de givna filerna:

tar -cjf archive.tar.bz2 file1 file2

Lista Tar Arkiv

När det används med --list ( -t ) kommer tar kommandot att lista innehållet i ett tar-arkiv utan att extrahera det. Kommandot bälgar, kommer att lista innehållet i filen archive.tar :

tar -tf archive.tar Utdata listar namnen på alla filer i arkivet:

file1 file2 file3

För att få mer information som filägaren, filstorlek, tidsstämpel använder du --verbose ( -v ):

tar -tvf archive.tar

-rw-r--r-- linuxize/users 0 2018-09-08 01:19 file1 -rw-r--r-- linuxize/users 0 2018-09-08 01:19 file2 -rw-r--r-- linuxize/users 0 2018-09-08 01:19 file3

Extrahering Tar Archive

De flesta av de arkiverade filerna i Linux arkiveras och komprimeras med ett tar- eller tar.gz-format. Att veta hur man extraherar dessa filer från kommandoraden är viktigt.

För att extrahera ett --extract använder du --extract ( -x ) följt av arkivnamnet:

tar -xf archive.tar

Det är också vanligt att lägga till -v alternativet för att skriva ut namnen på filerna som extraheras.

tar -xvf archive.tar

Extrahera Tar Archive i ett annat katalog

Som standard extraherar tar arkivinnehållet i den aktuella arbetskatalogen. Använd - --directory ( -C ) för att extrahera arkivfiler i en specifik katalog:

För att till exempel extrahera arkivinnehållet till /opt/files katalogen kan du använda:

tar -xf archive.tar -C /opt/files

Extrahera Tar Gz och Tar Bz2 Arkiv

När du extraherar komprimerade arkiv som tar.gz eller tar.bz2 du inte ange ett dekomprimeringsalternativ. Kommandot är detsamma som vid extrahering av tar :

tar -xf archive.tar.gz

tar -xf archive.tar.bz2

Extrahera specifika filer från ett tjärarkiv

Ibland istället för att extrahera hela arkivet kanske du behöver extrahera bara några filer från det.

För att extrahera en eller flera specifika filer från ett tar-arkiv, lägg till en mellanseparerad lista över filnamn som ska extraheras efter arkivnamnet:

tar -xf archive.tar file1 file2

När du extraherar filer måste du ange deras exakta namn inklusive sökvägen, tryckt av - --list ( -t ).

Att extrahera ett eller flera kataloger från ett arkiv är detsamma som att extrahera filer:

tar -xf archive.tar dir1 dir2

tar -xf archive.tar README

tar: README: Not found in archive tar: Exiting with failure status due to previous errors

Extrahera filer från ett Tar-arkiv med hjälp av Wildcard

För att extrahera filer från ett arkiv baserat på ett jokerteckenmönster använder du --wildcards omkopplaren och citerar mönstret för att förhindra att skalet tolker det.

För att exempelvis extrahera filer vars namn slutar på .js (Javascript-filer) kan du använda:

tar -xf archive.tar --wildcards '*.js'

Lägga till filer i det befintliga tararkivet

För att lägga till filer eller kataloger i ett befintligt --append använder du --append ( -r ).

Till exempel, för att lägga till en fil med namnet newfile till archive.tar, skulle du köra:

tar -rvf archive.tar newfile

Ta bort filer från ett tjärarkiv

Använd operationen - ta bort för att ta bort filer från ett arkiv.

Följande exempel visar hur du tar bort file1 från archive.tar,:

tar --delete -f archive.tar file1

Slutsats

De vanligaste användningarna av tar är att skapa och extrahera ett tjärarkiv. När du extraherar ett arkiv använder tar -xf kommandot tar -xf följt av arkivnamnet och för att skapa ett nytt använder tar -czf följt av tar -czf och filerna och katalogerna du vill lägga till i arkivet.

Mer information om tjärkommandot finns på dokumentationen för Gnu-tjära.

tjärterminal