4Sep

Cum se comprima și extrage fișierele utilizând comanda tar pentru Linux

Comanda tar din Linux este adesea folosită 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 cugudron. Comanda tar poate extrage și arhivele rezultate.

Comanda GNU tar inclusă cu distribuțiile Linux are compresie integrată.Se poate crea o arhivă. tar și apoi se comprima cu compresie gzip sau bzip2 într-o singură comandă.Din acest motiv, fișierul rezultat este un fișier. tar.gz sau 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. Va comprima de asemenea 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/ director-sau-fișier

Iată ce înseamnă acele switch-uri:

  • -c: C reate o arhivă.
  • -z: Comprimarea arhivei cu g z ip.
  • -v: Afișați progresul în terminal în timp ce creați arhiva, cunoscută și ca modul " v erbose".V este întotdeauna opțional în aceste comenzi, dar este util.
  • -f: Vă permite să specificați ilename f al arhivei.

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

tar -czvf archive.tar.gz

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

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

Comprimare mai multe directoare sau fișiere la o dată

În timp ce tarul este folosit frecvent pentru a comprima un singur director, îl puteți folosi și pentru a comprima mai multe directoare, mai multefișiere individuale sau ambele. Furnizați doar o listă de fișiere sau directoare în loc de una singură.De exemplu, să presupunem că doriți să comprimați directorul Descărcări /home/ubuntu/, directorul de chestiuni /usr/local/ și fișierul /home/ubuntu/Documents/ notes.txt. Ați rula următoarea comandă:

tar -czvf archive.tar.gz /home/ubuntu/ Descărcări /usr/local/ chestii /home/ubuntu/Documents/ notes.txt

Doar listați cât mai multe directoare sau fișiere pe care doriți să le creați copii de rezervă.

Excludeți directoarele și fișierele

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

De exemplu, să presupunem că 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 proceda:

tar -czvf archive.tar.gz /home/ ubuntu --exclude = Descărcări /home/ubuntu/ --exclude = /home/ubuntu/. cache

Comutatorul --exclude este foarte puternic. Nu ia nume de directoare și fișiere - acceptă de fapt modele. Mai aveți multe de făcut cu asta. De exemplu, puteți arhiva un întreg director și puteți exclude toate fișierele. mp4 cu următoarea comandă:

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

Utilizați bzip2 Compression În schimb

În timp ce compresia gzip este cel mai frecventfolosit pentru a crea fișiere. tar.gz sau. tgz, tar suportă de asemenea compresia bzip2.Acest lucru vă permite să creați fișiere comprimate bzip2, deseori numite. tar.bz2,. tar.bz sau. tbz. Pentru a face acest lucru, înlocuiți -z pentru gzip în comenzi aici cu -j pentru bzip2.

Gzip este mai rapid, dar în general se comprimă puțin mai puțin, deci obțineți un fișier oarecum mai mare. Bzip2 este mai lent, dar se comprimă un pic mai mult, deci obțineți un fișier ceva mai mic. Gzip este, de asemenea, mai des întâlnit, cu unele sisteme descurajate în jos, inclusiv suportul gzip în mod prestabilit, dar nu suportul bzip2.În general, totuși, gzip și bzip2 sunt practic același lucru și ambele vor funcționa în mod similar.

De exemplu, în locul primului exemplu pe care l-am furnizat pentru comprimarea directorului de chestii, ați rula următoarea comandă:

tar -cjvf archive.tar.bz2 chestii

Extrageți o arhivă

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

tar -xzvf archive.tar.gz

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

Este posibil să doriți să extrageți conținutul arhivei într-un anumit director. Puteți face acest lucru prin adăugarea comutatorului -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" în comenzile de mai sus cu un "j".

Aceasta este cea mai simplă posibilă utilizare 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 tar de 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. Puteți, de asemenea, să citiți manualul online al lui tar.

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