Comanda tar este prescurtarea pentru arhiva de casete în Linux. Această comandă este utilizată pentru crearea arhivei și extragerea fișierelor de arhivă. În Linux , este una dintre comenzile esențiale care facilitează funcționalitatea de arhivare. Putem folosi această comandă pentru a crea fișiere de arhivă necomprimate și comprimate și pentru a le modifica și menține, de asemenea.
Tar este un utilitar de software de calculator pentru a colecta mai multe fișiere într-un singur fișier de arhivă în calcul. Adesea, este cunoscut ca tarball în scopuri de backup și distribuție. Titlul este achiziționat din „arhiva de bandă”, deoarece a fost de fapt dezvoltat pentru a specifica date pe dispozitivele I/O secvențiale care nu folosesc niciunul dintre sistemele lor de fișiere. Grupurile de date de arhivă create de tar includ mulți parametri ai sistemului de fișiere, cum ar fi organizarea directoarelor, permisiunea de acces la fișiere, proprietatea, marcajele de timp și numele. În favoarea pax, POSIX a abandonat gudronul, gudronul este încă utilizat pe scară largă.
Mai întâi, a fost anunțat în versiunea 7 Unix în ianuarie 1979, înlocuind programul tp. Pentru a stoca datele, structura fișierelor a fost standardizată în POSIX.1-1988 și ulterior POSIX.1-2001 și a devenit un model susținut de aproape toate sistemele moderne de arhivare a fișierelor. Sistemele de operare asemănătoare Unix conțin în general instrumente pentru suportul fișierelor tar și utilitare utilizate pentru comprimarea lor, cum ar fi bzip2 și gzip.
De la Actualizarea Microsoft din 10 aprilie 2018, BSD-tar a fost conținut în Microsoft Windows și există două sau mai multe instrumente terțe pentru a citi și scrie aceste modele pe Windows.
Formate de fișiere tar
Există multe formate de fișiere tar disponibile, inclusiv cele actuale și istorice. Două formate tar sunt scrise în POSIX: pax și ustar.
Antet
Înregistrarea antetului fișierului include metadatele unui fișier. În înregistrarea antet, informațiile sunt codificate în standardele ASCII pentru a asigura flexibilitatea în arhitecturi distincte, folosind ordonări distincte de octeți. Prin urmare, dacă fiecare fișier este un fișier text ASCII dintr-o arhivă și conține nume ASCII, arhiva este un fișier text ASCII (având mai multe caractere NUL).
În tabelul următor sunt menționate mai multe câmpuri, definite de formatul tar Unix real. Tabelul de tip fișier de link/indicator conține câteva extensii moderne. Un câmp este umplut cu diferiți octeți NUL dacă nu este utilizat.
Antet tar pre-POSIX.1-1988:
Camp | Dimensiunea campului | Compensarea câmpului |
---|---|---|
Nume de fișier | 100 | 0 |
Modul fișier | 8 | 100 |
ID-ul de utilizator numeric al proprietarului | 8 | 108 |
ID-ul de utilizator numeric al grupului | 8 | 116 |
Dimensiunea fișierului de octeți | 12 | 124 |
Ora ultimei modificări sub formă de timp numeric Unix | 12 | 136 |
Sumă de control pentru înregistrarea antetului | 8 | 148 |
Indicator de legătură | 1 | 156 |
Numele fișierului legat | 100 | 157 |
Formatul Ustart
În formatul Ustar, aproape fiecare program tar modern scrie și citește arhive, anunțat de standardul POSIX IEEE P1003.1 din 1988. A introdus câmpuri de antet suplimentare. Programele tar anterioare ar evita informațiile suplimentare, dar programele noi vor verifica prezența șirului „Ustar” pentru a decide dacă este utilizat formatul mai nou.
shloka mehta
Camp | Dimensiunea campului | Compensarea câmpului |
---|---|---|
Multe câmpuri, ca în formatul anterior | 156 | 0 |
Tip steag | 1 | 156 |
Câmp similar ca în formatul anterior | 100 | 157 |
„ustar” indicator Ustar, apoi NUL | 6 | 257 |
Versiunea „00” Ustar | 2 | 263 |
Numele de utilizator al proprietarului | 32 | 265 |
Numele de grup al proprietarului | 32 | 297 |
Numărul major al dispozitivului | 8 | 329 |
Număr minor al dispozitivului | 8 | 337 |
Prefixul numelui fișierului | 155 | 3. 4. 5 |
POSIX.1-2001/pax
Sun a propus o tehnică de adăugare a extensiilor la un format tar în 1997. Ulterior, a fost aprobată pentru standardul POSIX.1-2001. Formatul se numește format pax sau format tar extins. Unele etichete sunt specificate de standardul POSIX, inclusiv mtime, atime, linkpath, gname, uname, sizes, gid, uid și o definiție de set de caractere pentru nume de grup/utilizator și de cale.
Implementări cheie ale tar
Implementările cheie sunt menționate în ordinea originii:
În plus, majoritatea implementărilor cpio și pax pot crea și citi două sau mai multe tipuri de fișiere tar.
Sintaxa comenzii tar:
tar [options] [archive-file] [directory or file to be archived]
Opțiuni din comanda tar
Mai jos sunt enumerate diferite opțiuni din comanda tar:
Introducere în fișierul arhivă
Fișierul arhivă poate fi definit ca un fișier care conține mai multe fișiere cu metadate. Aceste fișiere sunt utilizate pentru a colecta mai mult de un fișier de date împreună într-un fișier individual pentru o stocare și o portabilitate mai ușoare. Poate fi folosit și pentru comprimarea fișierelor pentru a consuma mai puțin spațiu de stocare.
Exemple de comandă tar
Unele dintre exemplele importante care sunt utilizate pe scară largă în comanda tar sunt următoarele:
1. Realizarea unei arhive tar necomprimate cu opțiunea -cvf
Această opțiune face un fișier tar cunoscut ca fişier.tar . Este arhiva fiecărui fișier .txt din interior mydir director.
Comanda este următoarea:
$ tar cvf file.tar *.txt
2. Extragerea fișierelor prin arhivă cu opțiunea -xvf
Această opțiune poate extrage fișiere prin arhive.
Comanda este următoarea:
$ tar xvf file.tar
3. compresie gzip peste arhiva tar cu opțiunea -z
Această opțiune face un fișier tar cunoscut ca file.tar.gz. Este arhiva fiecărui fișier .txt.
Comanda este următoarea:
string.substring java
$ tar cvzf file.tar.gz *.txt
4. Extragerea arhivei gzip tar cu opțiunea -xvzf
Această opțiune poate extrage fișierele prin fișierele arhivate file.tar.gz tar.
Comanda este următoarea:
$ tar xvzf file.tar.gz
5. Realizarea de fișiere tar comprimate cu opțiunea -j
Această opțiune ne va ajuta să creăm și să comprimăm fișiere de arhivă. Atât decomprimarea, cât și comprimarea durează mai mult timp în comparație cu gzip.
Comanda este următoarea:
$ tar cvfj file.tar.tbz hello1.txt
6. Anulați un singur director sau fișier specificat în Linux
Această opțiune este folosită pentru a dezarhiva orice fișier din directorul nostru curent sau din directorul specificat cu opțiunea -C.
Comanda este următoarea:
arraylist.sort
$ tar -xvf file.tar -C file's path in the directory
Sau,
$ tar -xvf file.tar
7. Untar mai multe fișiere .tar.tbz, .tar.gz, .tar în Linux
Această opțiune ne va ajuta răspândire sau extrageți mai mult de un fișier din tar.bz2, tar.gz și dintr-un fișier arhivă tar.
Exemplul acestei opțiuni este următorul:
$ tar -jxvf file.tar.tbz 'hello1.txt'
Sau,
$ tar -zxvf file.tar.gz 'hello1.txt' 'hello2.txt'
Sau,
$ tar -xvf file.tar 'hello1.txt' 'hello2.txt'
8. Verificați dimensiunea fișierului tar.tbz, tar.gz, tar existent
Comanda ne va ajuta să arătăm dimensiunea fișierului arhivă în kiloocteți (KB), care este menționat mai sus.
Comanda este următoarea:
$ tar -czf - file2.tar.tbz | wc -c
Sau,
$ tar -czf - file1.tar.gz | wc -c
Sau,
$ tar -czf - file.tar | wc -c
9. Actualizați fișierul tar existent
În Linux, comanda pentru actualizarea unui fișier tar existent este următoarea:
$ tar rvf file.tar *.txt
10. Lista de conținut și descrieți fișierul tar cu opțiunea tf
Această opțiune ne va ajuta să listăm întreaga listă a fișierelor arhive. De asemenea, putem enumera un anumit conținut în orice fișier tar.
Comanda este următoarea:
$ tar tf file.tar
11. Vizualizați arhiva cu opțiunea -tvf
În Linux, putem folosi opțiunea -tvf pentru a vizualiza arhiva.
Comanda este următoarea:
$ tar -tvf file.tar
12. Transmite numele fișierului ca argument pentru a găsi un fișier tar
Această opțiune poate vizualiza fișierele arhivate cu informațiile lor.
șir de lungime
Comanda este următoarea:
$ tar tvf file.tar filename
13. Folosind pipe pentru a lansa „comanda grep” pentru a căuta ceea ce căutăm
Această opțiune ne va ajuta să listăm doar imaginea sau textul menționat prindere prin fisiere arhivate.
Comanda este următoarea:
$ tar tvf file.tar | grep 'filename.file'
Sau,
$ tar tvf file.tar | grep 'text to search'
Introducere în Wildcards
Alternativ, metacaracterele sunt denumite un caracter wildcard sau un caracter wild în Linux. Este un simbol care este folosit pentru reprezentarea sau înlocuirea mai multor caractere.
cum să împerechezi căștile beats
De obicei, metacaracterele sunt fie un semn de întrebare (?) care ilustrează un caracter individual, fie un asterisc (*) care ilustrează mai multe caractere.
Exemplu-
14. Găsiți o imagine în format .webp
Ne va ajuta să extragem numai fișiere împreună cu extensia .webp din arhiva file.tar. Opțiunea -wildcards informează tar pentru interpretarea wildcards în numele fișierului care urmează să fie extras.
Numele fișierului (*.webp) este inclus în ghilimele simple pentru a proteja wildcard (*) prin extinderea incorect de către orice shell.
Comanda este următoarea:
$ tar tvf file.tar --wildcards '*.webp'
Notă: În comanda de mai sus, simbolul „*” este aplicat în poziția numelui fișierului pentru preluarea fiecărui fișier disponibil în acel director specific.
15. Ștergeți fișierele din arhiva tar
Putem folosi opțiunea --delete pentru a elimina fișiere și o arhivă tar.
Comanda este următoarea:
$ tar --delete -f archive.tar file_name
Exemplu:
tar -delete -f file.tar hello1.txt
Ieșire:
salut1.txt fișierul a fost eliminat din arhiva file.tar: