Kako komprimirati i ekstrahirati datoteke koristeći tar Command na Linuxu
Naredba tar na Linuxu često se koristi za stvaranje .tar.gz ili .tgz arhivskih datoteka, koje se nazivaju i "tarballs". Ova naredba ima veliki broj opcija, ali samo trebate zapamtiti nekoliko slova da biste brzo stvorili arhive pomoću tar , Naredba tar može izdvojiti i arhive koje su nastale.
GNU tar naredba uključena u Linux distribucije ima integriranu kompresiju. To može stvoriti .tar arhivu, a zatim je komprimirati s gzip ili bzip2 kompresijom u jednu naredbu. Zato je rezultirajuća datoteka .tar.gz datoteka ili .tar.bz2 datoteka.
Stisnite cijeli direktorij ili jednu datoteku
Koristite sljedeću naredbu za sažimanje cijelog direktorija ili jedne datoteke na Linuxu. Također će komprimirati svaki drugi direktorij unutar direktorija koji navedete - drugim riječima, radi rekurzivno.
tar -czvf ime-od-arhive.tar.gz / put / do / direktorij-ili-datoteka
Evo što ti prekidači zapravo znače:
- -c: Create arhivu.
- -z: Stisnite arhivu pomoću gzIP.
- -v: Prikažite napredak u terminalu tijekom stvaranja arhive, također poznatog kao "vnačin rada. U ovim naredbama v je uvijek opcionalan, ali je od pomoći.
- -f: Omogućuje određivanje filename arhive.
Recimo da imate direktorij nazvan “stuff” u trenutnom direktoriju i želite ga spremiti u datoteku pod nazivom archive.tar.gz. Pokrenuli biste sljedeću naredbu:
tar -czvf arhiva.tar.gz stvari
Ili, recimo da postoji direktorij na / usr / local / something na trenutnom sustavu i želite ga komprimirati u datoteku pod nazivom archive.tar.gz. Pokrenuli biste sljedeću naredbu:
tar -czvf arhiva.tar.gz / usr / local / something
Stisnite više direktorija ili datoteka odjednom
Dok se tar često koristi za komprimiranje jednog direktorija, možete ga koristiti i za komprimiranje više direktorija, više pojedinačnih datoteka ili oboje. Dovoljno je dati popis datoteka ili direktorija umjesto jednog. Na primjer, recimo da želite komprimirati direktorij / home / ubuntu / Downloads, / usr / local / stuff i /home/ubuntu/Documents/notes.txt. Pokrenuli biste sljedeću naredbu:
tar -czvf arhiva.tar.gz / home / ubuntu / preuzimanja / usr / local / stuff /home/ubuntu/Documents/notes.txt
Dovoljno je navesti koliko direktorija ili datoteka želite kopirati.
Izuzimanje direktorija i datoteka
U nekim slučajevima možda želite komprimirati cijeli direktorij, ali ne i određene datoteke i direktorije. To možete učiniti dodavanjem --isključiti
za svaki direktorij ili datoteku koju želite isključiti.
Na primjer, recimo da želite komprimirati / home / ubuntu, ali ne želite komprimirati / home / ubuntu / Downloads i /home/ubuntu/.cache direktorije. Evo kako ćete to učiniti:
tar -czvf arhiva.tar.gz / home / ubuntu --exclude = / home / ubuntu / Downloads --exclude = / home / ubuntu / .cache
--isključiti
prekidač je vrlo moćan. Ne uzima imena direktorija i datoteka - zapravo prihvaća obrasce. Imaš još mnogo toga što možeš učiniti s tim. Na primjer, možete arhivirati cijeli direktorij i isključiti sve .mp4 datoteke sljedećom naredbom:
tar -czvf arhiva.tar.gz / home / ubuntu --exclude = *. mp4
Koristite bzip2 Compression umjesto
Dok se gzip kompresija najčešće koristi za stvaranje .tar.gz ili .tgz datoteka, tar također podržava bzip2 kompresiju. To vam omogućuje stvaranje bzip2-komprimiranih datoteka, često nazvanih .tar.bz2, .tar.bz ili .tbz datoteke. Da biste to učinili, samo zamijenite -z za gzip u naredbama ovdje s -j za bzip2.
Gzip je brži, ali se općenito sabija malo manje, pa dobivate nešto veću datoteku. Bzip2 je sporiji, ali se malo više komprimira, pa dobivate nešto manju datoteku. Gzip je također češći, s nekim ukinutim Linux sustavima, uključujući gzip podršku po defaultu, ali ne i bzip2 podršku. Općenito, ipak, gzip i bzip2 su praktički ista stvar i oba će raditi slično.
Na primjer, umjesto prvog primjera koji smo dali za sažimanje direktorija stvari, pokrenuli biste sljedeću naredbu:
tar -cjvf arhiva.tar.bz2 stvari
Izvadite arhivu
Nakon što imate arhivu, možete je izdvojiti pomoću naredbe tar. Sljedeća naredba će izvući sadržaj arhive.tar.gz u trenutni direktorij.
tar -xzvf arhiva.tar.gz
To je isto kao i naredba stvaranja arhive koju smo koristili gore, osim naredbe -x
zamjenjuje zamjenu -c
prekidač. Ovo određuje želite li exumjesto arhive stvorite arhivu.
Možda želite izvući sadržaj arhive u određeni direktorij. To možete učiniti dodavanjem -C
prebacite na kraj naredbe. Na primjer, sljedeća naredba će izvući sadržaj datoteke archive.tar.gz u / tmp direktorij.
tar -xzvf arhiva.tar.gz -C / tmp
Ako je datoteka bzip2-komprimirana datoteka, zamijenite "z" u gornjim naredbama s "j".
To je najjednostavnije moguće korištenje naredbe tar. Naredba uključuje veliki broj dodatnih opcija, tako da ih ne možemo sve ovdje navesti. Za više informacija. pokrenite Informacije o katran naredbu na ljusci da biste vidjeli stranicu s detaljnim informacijama naredbe tar. pritisni q da biste zatvorili stranicu s informacijama kada završite. Također možete pročitati online priručnik za tar.
Ako koristite grafičku radnu površinu Linuxa, možete također koristiti uslužni program za sažimanje datoteka ili upravitelj datoteka uključen u vašu radnu površinu za stvaranje ili izdvajanje datoteka .tar. U sustavu Windows možete izdvojiti i stvoriti .tar arhive pomoću besplatnog alata 7-Zip.