Kommandot tar är en förkortning av bandarkiv i Linux. Detta kommando används för att skapa arkiv och extrahera arkivfilerna. I Linux , det är ett av de viktigaste kommandona som underlättar arkiveringsfunktionalitet. Vi kan använda det här kommandot för att skapa okomprimerade och komprimerade arkivfiler och ändra och underhålla dem också.
Tar är ett verktyg för datorprogram för att samla flera filer till en enda arkivfil i datoranvändning. Ofta är det känt som tarball för säkerhetskopiering och distribution. Titeln är hämtad från 'bandarkiv' eftersom den faktiskt utvecklades för att specificera data på sekventiella I/O-enheter som inte använder något av deras filsystem. Arkivdatagrupperna som skapas av tar inkluderar många filsystemparametrar som katalogorganisation, filåtkomstbehörighet, ägande, tidsstämplar och namn. Till förmån för pax, POSIX övergiven tjära, tjära ser ändå utbredd användning.
Först tillkännagavs det i version 7 Unix i januari 1979, och ersatte tp-programmet. För att lagra data standardiserades filstrukturen i POSIX.1-1988 och senare POSIX.1-2001 och blev ett mönster som stöddes av nästan alla moderna filarkiveringssystem. Unix-liknande operativsystem innehåller vanligtvis verktyg för att stödja tar-filer och verktyg som används för att komprimera dem, som bzip2 och gzip.
Sedan Microsofts uppdatering den 10 april 2018 har BSD-tar funnits i Microsoft Windows, och det finns två eller flera tredjepartsverktyg för att läsa och skriva dessa mönster på Windows.
Filformat för tar
Det finns många tar-filformat tillgängliga, inklusive nuvarande och historiska. Två tar-format är skrivna i POSIX: pax och ustar.
Rubrik
Filrubrikposten innehåller metadata för en fil. I rubrikposten kodas informationen i ASCII-standarderna för att säkerställa flexibilitet över distinkta arkitekturer med hjälp av distinkta byteordningar. Därför, om varje fil är en ASCII-textfil i ett arkiv och innehåller ASCII-namn, är arkivet en ASCII-textfil (som har flera NUL-tecken).
Flera fält nämns i följande tabell, definierade av det faktiska Unix-tjärformatet. Tabellen med länkfil/indikatortyp innehåller några moderna tillägg. Ett fält fylls med olika NUL-bytes om det inte används.
Pre-POSIX.1-1988 tar rubrik:
Fält | Fältstorlek | Fältförskjutning |
---|---|---|
Filnamn | 100 | 0 |
Filläge | 8 | 100 |
Numeriskt användar-ID för ägaren | 8 | 108 |
Numeriskt användar-ID för gruppen | 8 | 116 |
Byte filstorlek | 12 | 124 |
Senaste ändringstid i form av numerisk Unix-tid | 12 | 136 |
Kontrollsumma för rubrikposten | 8 | 148 |
Länkindikator | 1 | 156 |
Länkat filnamn | 100 | 157 |
Ustart format
I Ustar-formatet skriver och läser nästan alla moderna tar-program arkiv, tillkännagav av POSIX IEEE P1003.1-standarden från 1988. Det introducerade extra rubrikfält. Tidigare tar-program skulle undvika ytterligare information, men nya program kommer att kontrollera närvaron av 'Ustar'-strängen för att avgöra om det nyare formatet används.
Fält | Fältstorlek | Fältförskjutning |
---|---|---|
Många fält, som i föregående format | 156 | 0 |
Skriv flagga | 1 | 156 |
Liknande fält som i föregående format | 100 | 157 |
'ustar' Ustar-indikator, sedan NUL | 6 | 257 |
'00' Ustar-version | 2 | 263 |
Ägarens användarnamn | 32 | 265 |
Gruppnamn på ägaren | 32 | 297 |
Huvudnummer på enheten | 8 | 329 |
Mindre nummer på enheten | 8 | 337 |
Filnamnsprefix | 155 | 3. 4. 5 |
POSIX.1-2001/st
Sun föreslog en teknik för att lägga till tillägg till ett tjärformat 1997. Senare godkändes den för POSIX.1-2001-standarden. Formatet kallas pax-format eller utökat tar-format. Vissa taggar specificeras av POSIX-standarden, inklusive mtime, atime, linkpath, gname, uname, sizes, gid, uid och en teckenuppsättningsdefinition för grupp-/användarnamn och sökvägsnamn.
Viktiga implementeringar av tjära
Nyckelimplementeringarna nämns i ursprungsordningen:
Dessutom kan de flesta cpio- och pax-implementeringar skapa och läsa två eller flera tar-filtyper.
Syntax för tar kommando:
tar [options] [archive-file] [directory or file to be archived]
Alternativ i tar-kommandot
Olika alternativ i tar-kommandot listas nedan:
Introduktion till Arkivfil
Arkivfilen kan definieras som en fil som innehåller flera filer med metadata. Dessa filer används för att samla mer än en datafil tillsammans i en enskild fil för enklare lagring och portabilitet. Den kan också användas för att komprimera filer för att förbruka mindre lagringsutrymme.
Exempel på tar-kommando
Några av de viktiga exemplen som används ofta i tar-kommandot är följande:
1. Skapa ett okomprimerat tar-arkiv med -cvf-alternativet
Detta alternativ gör en tar-fil känd som file.tar . Det är arkivet för varje .txt-fil inuti mydir katalog.
Kommandot är som följer:
$ tar cvf file.tar *.txt
2. Extrahera filer genom arkivet med alternativet -xvf
Det här alternativet kan extrahera filer genom arkiv.
Kommandot är som följer:
Sridevi
$ tar xvf file.tar
3. gzip-komprimering över tar-arkiv med -z-alternativet
Detta alternativ gör en tar-fil känd som file.tar.gz. Det är arkivet för varje .txt-fil.
Kommandot är som följer:
$ tar cvzf file.tar.gz *.txt
4. Extrahera gzip tar-arkivet med alternativet -xvzf
Det här alternativet kan extrahera filerna genom file.tar.gz tar arkiverade filer.
Kommandot är som följer:
$ tar xvzf file.tar.gz
5. Skapa komprimerade tar-filer med alternativet -j
Det här alternativet hjälper oss att skapa och komprimera arkivfiler. Både dekomprimering och komprimering tar längre tid jämfört med gzip.
Kommandot är som följer:
$ tar cvfj file.tar.tbz hello1.txt
6. Ta bort en enda specificerad katalog eller fil i Linux
Det här alternativet används för att ta bort alla filer i vår nuvarande katalog eller i den angivna katalogen med alternativet -C.
Kommandot är som följer:
radering från ett binärt sökträd
$ tar -xvf file.tar -C file's path in the directory
Eller,
$ tar -xvf file.tar
7. Ta bort flera .tar.tbz-, .tar.gz-, .tar-filer i Linux
Detta alternativ kommer att hjälpa oss att sprida eller extrahera mer än en fil från tar.bz2, tar.gz och en tar-arkivfil.
Exemplet på detta alternativ är följande:
$ tar -jxvf file.tar.tbz 'hello1.txt'
Eller,
$ tar -zxvf file.tar.gz 'hello1.txt' 'hello2.txt'
Eller,
$ tar -xvf file.tar 'hello1.txt' 'hello2.txt'
8. Kontrollera storleken på den befintliga tar.tbz, tar.gz, tar-filen
Kommandot hjälper oss att visa arkivfilens storlek i kilobyte (KB) som nämns ovan.
Kommandot är som följer:
$ tar -czf - file2.tar.tbz | wc -c
Eller,
$ tar -czf - file1.tar.gz | wc -c
Eller,
$ tar -czf - file.tar | wc -c
9. Uppdatera den befintliga tar-filen
I Linux är kommandot för att uppdatera en befintlig tar-fil som följer:
$ tar rvf file.tar *.txt
10. Innehållslista och beskriv tar-filen med alternativet tf
Det här alternativet hjälper oss att lista hela arkivfilens lista. Vi kan också lista särskilt innehåll i vilken tar-fil som helst.
Kommandot är som följer:
$ tar tf file.tar
11. Visa arkivet med alternativet -tvf
I Linux kan vi använda alternativet -tvf för att se arkivet.
Kommandot är som följer:
hur man får aktuellt datum i java
$ tar -tvf file.tar
12. Skicka filnamnet som argument för att hitta en tar-fil
Det här alternativet kan visa de arkiverade filerna med deras information.
Kommandot är som följer:
$ tar tvf file.tar filename
13. Använd pipe för att kasta 'grep kommando' för att söka efter det vi söker efter
Det här alternativet hjälper oss att bara lista den nämnda bilden eller texten i grepp genom arkiverade filer.
Kommandot är som följer:
$ tar tvf file.tar | grep 'filename.file'
Eller,
$ tar tvf file.tar | grep 'text to search'
Introduktion till jokertecken
Alternativt hänvisas jokertecken till som ett jokertecken eller jokertecken i Linux. Det är en symbol som används för att representera eller ersätta flera tecken.
Vanligtvis är jokertecken antingen ett frågetecken (?) som illustrerar ett individuellt tecken eller en asterisk (*) som illustrerar flera tecken.
Exempel-
14. Hitta en bild i .webp-format
Det kommer att hjälpa oss att bara extrahera filer tillsammans med .webp-tillägget från file.tar-arkivet. Alternativet -wildcards informerar tar för tolkning av jokertecken i filnamnet som ska extraheras.
Namnet på filen (*.webp) är inneslutet i de enstaka citattecken för att skydda jokertecknet (*) genom att felaktigt utökas av något skal.
Kommandot är som följer:
$ tar tvf file.tar --wildcards '*.webp'
Obs: I kommandot ovan används '*'-symbolen i positionen för filnamnet för att ta varje fil tillgänglig i den specifika katalogen.
15. Ta bort filer från tar-arkivet
Vi kan använda alternativet --delete för att ta bort filer och ett tar-arkiv.
Kommandot är som följer:
$ tar --delete -f archive.tar file_name
Exempel:
tar -delete -f file.tar hello1.txt
Produktion:
hej1.txt filen har tagits bort från file.tar-arkivet: