Cum se comprimă și se extrag fișierele folosind comanda tar pe Linux

  • Chris Hoffman

    @chrisbhoffman

  • 10 aprilie 2016 , 6:40 am EDT

Comanda tar pe Linux este adesea utilizată pentru a crea fișiere de arhivă .tar.gz sau .tgz, numite și „tarballs”. Această comandă are un număr mare de opțiuni, dar trebuie doar să vă amintiți câteva litere pentru a crea rapid arhive cu tar. Comanda tar poate extrage și arhivele rezultate.

Comanda GNU tar inclusă în Linux distribuțiile au compresie integrată. Poate crea o arhivă .tar și apoi o poate comprima cu compresie gzip sau bzip2 într-o singură comandă. De aceea fișierul rezultat este un fișier .tar.gz sau un fișier .tar.bz2.

Comprimarea unui întreg director sau a unui singur fișier

Utilizați următoarea comandă pentru a comprima un întreg director sau un singur fișier pe Linux. De asemenea, va comprima orice alt director din interiorul unui director pe care îl specificați – cu alte cuvinte , funcționează recursiv.

tar -czvf name-of-archive.tar.gz /path/to/directory-or-file

Iată ce înseamnă de fapt acele comutatoare:

  • -c: Creați o arhivă.
  • -z: Comprimă arhiva cu gzip.
  • -v: Afișează progresul în terminal în timp ce creezi arhiva, cunoscut și sub denumirea de „mod detaliat”. V este întotdeauna opțional în aceste comenzi, dar este util.
  • -f: Vă permite să specificați numele fișierului arhivei.
Publicitate

Să presupunem că aveți un director numit „chestii” în directorul curent și doriți să îl salvați într-un fișier numit archive.tar.gz. Ați rula următoarea comandă:

tar -czvf archive.tar.gz stuff

Sau, să presupunem că există un director la / usr / local / ceva în sistemul curent și doriți să-l comprimați într-un fișier numit archive.tar.gz. Ați rula următoarea comandă :

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

Comprimă mai multe directoare sau fișiere simultan

LEGATE: Cum să gestionezi fișiere de la terminalul Linux: 11 comenzi pe care trebuie să le Știți

În timp ce tar este frecvent utilizat pentru a comprima un singur director, îl puteți folosi și pentru a comprima mai multe directoare, mai multe fișiere individuale sau ambele. Furnizați doar o listă de fișiere sau directoare în loc de unul singur. De exemplu, să presupunem că doriți să comprimați / home / ubuntu / Do wnloads director, directorul / usr / local / stuff și fișierul /home/ubuntu/Documents/notes.txt. Pur și simplu executați următoarea comandă:

tar -czvf archive.tar.gz /home/ubuntu/Downloads /usr/local/stuff /home/ubuntu/Documents/notes.txt

Enumerați doar câte directoare sau fișiere doriți să faceți backup.

Excludeți Directoare și fișiere

În unele cazuri, poate doriți să comprimați un întreg director, dar să nu includeți anumite fișiere și directoare. Puteți face acest lucru adăugând un comutator --exclude pentru fiecare director sau fișier pe care doriți să îl excludeți.

Publicitate

De exemplu, să presupunem doriți să comprimați / home / ubuntu, dar nu doriți să comprimați directoarele / home / ubuntu / Downloads și /home/ubuntu/.cache. Iată cum ați face acest lucru:

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

Comutatorul --exclude este foarte puternic. Nu ia nume de directoare și fișiere – acceptă de fapt tipare. Puteți face mult mai mult cu el. De exemplu, puteți arhiva un întreg director și excludeți toate fișierele .mp4 cu următoarea comandă:

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

Utilizați în schimb compresia bzip2

În timp ce compresia gzip este cea mai frecvent utilizată pentru a crea fișiere .tar.gz sau .tgz, tar acceptă și compresia bzip2. Acest lucru vă permite să creați fișiere comprimate bzip2, denumite adesea fișiere .tar.bz2, .tar.bz sau .tbz. Pentru a face acest lucru, trebuie doar să înlocuiți -z pentru gzip din comenzile de aici cu un -j pentru bzip2.

Publicitate

Gzip este mai rapid, dar în general se comprimă puțin mai puțin, deci veți obține un fișier ceva mai mare. Bzip2 este mai lent, dar se comprimă puțin mai mult, astfel încât să obțineți un fișier ceva mai mic. Gzip este, de asemenea, mai frecvent, cu unele sisteme Linux decupate, inclusiv suport gzip în mod implicit, dar nu și suport bzip2. În general, totuși, gzip și bzip2 sunt practic același lucru și ambele vor funcționa similar.

De exemplu, în loc de primul exemplu pe care l-am oferit pentru comprimarea directorului de lucruri, ați rula următoarea comandă:

tar -cjvf archive.tar.bz2 stuff

Extrageți o arhivă

Odată ce aveți o arhivă, o puteți extrage cu comanda tar. Următoarea comandă va extrage conținutul arhivei.tar.gz în directorul curent.

tar -xzvf archive.tar.gz

Este la fel ca comanda de creare a arhivei pe care am folosit-o mai sus, cu excepția comutatorul -x înlocuiește comutatorul -c. Aceasta specifică faptul că doriți să extrageți o arhivă în loc să creați una.

Publicitate

Poate doriți să extrageți conținutul arhivei într-un anumit director. Puteți face acest lucru adăugând comutatorul -C la sfârșitul comenzii. De exemplu, următoarea comandă va extrage conținutul fișierului archive.tar.gz în directorul / tmp.

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

Dacă fișierul este un fișier comprimat bzip2, înlocuiți „z” din comenzile de mai sus cu un „j”.

Aceasta este cea mai simplă utilizare posibilă a comenzii tar. Comanda include un număr mare de opțiuni suplimentare, deci nu le putem lista pe toate aici. Pentru mai multe informatii. rulați comanda info tar la shell pentru a vizualiza pagina de informații detaliate a comenzii tar. Apăsați tasta q pentru a părăsi pagina de informații când ați terminat. De asemenea, puteți citi manualul tarului online.

Dacă utilizați un desktop Linux grafic, puteți utiliza, de asemenea, utilitarul de comprimare a fișierelor sau managerul de fișiere inclus pe desktop pentru a crea sau extrage fișiere .tar. Pe Windows, puteți extrage și crea arhive .tar cu ajutorul utilitarului 7-Zip gratuit.

Chris Hoffman
Chris Hoffman este redactor șef al How-To Geek. El a scris despre tehnologie timp de aproape un deceniu și a fost columnist pe PCWorld timp de doi ani. Chris a scris pentru The New York Times, a fost intervievat ca expert în tehnologie la posturi TV precum NBC 6 din Miami și a avut opera sa acoperită de știri precum BBC. Începând din 2011, Chris a scris peste 2.000 de articole care au fost citite de peste 500 de milioane de ori — și care „sunt aici chiar la How-To Geek.Read Full Bio”

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *