Početna » kako da » Kako komprimirati i ekstrahirati datoteke koristeći tar Command na Linuxu

    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.