4Sep

Kako komprimirati i ekstraktati datoteke pomoću Tar Command na Linuxu

Naredba tar na Linuxu često se koristi za stvaranje arhivskih datoteka. tar.gz ili. tgz, takozvane "tarballs". Ova naredba ima veliki broj opcija, ali samo trebate zapamtiti nekoliko slova kako biste brzo stvorili arhive skatran. Naredba tar također može izvući rezultirajuće arhive.

Naredba GNU tar uključena u Linux distribucije ima integriranu kompresiju. Može stvoriti. tar arhivu, a zatim ga komprimirati s gzipom ili bzip2 kompresijom u jednoj naredbi. Zato je rezultirajuća datoteka. tar.gz ili. tar.bz2 datoteka.

Sažimanje cijelog direktorija ili pojedinačne datoteke

Koristite sljedeću naredbu za komprimiranje cijelog direktorija ili jedne datoteke na Linuxu. Također će komprimirati svaku drugu mapu unutar direktorija koji navedete - drugim riječima, funkcionira rekurzivno.

tar -czvf ime-of-archive.tar.gz /path/to/ direktorij ili datoteka

Evo što oni zapravo znače:

  • -c: C reate arhivu.
  • -z: Sažimanje arhive s z ip.
  • -v: Prikažite napredak u terminalu tijekom izrade arhive, također poznat kao " v erbose" način. V je uvijek opcionalan u ovim naredbama, ali je korisno.
  • -f: Omogućuje određivanje naziva f arhive. Pretpostavimo da imate mapu pod nazivom "stvari" u trenutnom direktoriju i želite ga spremiti u datoteku pod nazivom archive.tar.gz. Trebali biste pokrenuti sljedeću naredbu: tar -czvf archive.tar.gz stvari

    Ili recimo da postoji direktorij na /usr/local/ nešto na trenutnom sustavu i želite ga komprimirati u datoteku pod nazivom archive.tar.gz. Izvršili biste sljedeću naredbu:

    tar -czvf archive.tar.gz /usr/local/ nešto

    Sažimanje 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šepojedinačne datoteke ili oboje. Dovoljno je dati popis datoteka ili direktorija umjesto jednog. Na primjer, recimo da želite komprimirati direktorij /home/ubuntu/ Downloads, /usr/local/ direktorij stvari i /home/ubuntu/Documents/ notes.txt datoteku. Upravo ćete pokrenuti sljedeću naredbu:

    tar -czvf archive.tar.gz /home/ubuntu/ Preuzimanja /usr/local/ stvari /home/ubuntu/Documents/ notes.txt

    Jednostavno navedite koliko je direktorija ili datoteka želite izraditi.

    Izuzmite direktorije i datoteke

    U nekim ćete slučajevima možda htjeti komprimirati cijeli direktorij, ali ne i određene datoteke i direktorije. To možete učiniti tako da dodate prekidač --exclude 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 biste to učinili:

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

    Prekidač --exclude je vrlo moćan. Ne uzima imena direktorija i datoteka - ona zapravo prihvaća obrasce. Mnogo toga možete učiniti s njom. Na primjer, možete arhivirati cijeli direktorij i izuzeti sve. mp4 datoteke sa sljedećom naredbom:

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

    Koristite bzip2 kompresiju umjesto

    Dok je gzip kompresija najčešćekoji se koristi za stvaranje. tar.gz ili. tgz datoteka, katran također podržava bzip2 kompresiju. To vam omogućuje stvaranje bzip2 komprimiranih datoteka, često nazvanih. tar.bz2,. tar.bz, ili. tbz datoteka. Da biste to učinili, samo zamijenite -z za gzip u naredbama ovdje s -j za bzip2.

    Gzip je brži, ali se obično komprimira malo manje, tako da dobijete nešto veću datoteku. Bzip2 je sporiji, ali se malo više komprimira, tako da dobivate nešto manju datoteku. Gzip je također češći, s nekim Linux sustavima koji su uklonjeni, uključujući gzip podršku prema zadanim postavkama, ali ne bzip2 podršku. Općenito, ipak, gzip i bzip2 su praktički ista stvar i oboje će raditi slično.

    Na primjer, umjesto prvog primjera koji smo predvidjeli za komprimiranje direktorija stvari, pokrenuli biste sljedeću naredbu:

    tar -cjvf archive.tar.bz2 stvari

    Izvadite arhivu

    Kad jednom imate arhivu, možete ga izdvojitis naredbom tar. Sljedeća naredba ekstrahirat će sadržaj arhive.tar.gz u trenutni direktorij.

    tar -xzvf archive.tar.gz

    To je isto kao i naredba za stvaranje arhive koju smo koristili gore, osim što prekidač -x zamjenjuje -c prekidač.To određuje da želite da x prikaže arhivu umjesto da ga stvorite.

    Možda želite izdvojiti sadržaj arhive u određeni direktorij. To možete učiniti tako da dodate gumb -C prijelaz na kraj naredbe. Na primjer, sljedeća naredba ekstrahirat će sadržaj arhive.tar.gz datoteke u / tmp direktorij.

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

    Ako je datoteka bzip2 komprimirana datoteka, zamijenite "z" u gornjim naredbama pomoću "j".

    Ovo je najjednostavnije moguće korištenje naredbe tar. Naredba uključuje veliki broj dodatnih opcija pa ih ne možemo sve ovdje navesti. Za više informacija.pokrenite info tar naredbu na ljusci za prikaz detaljne informacije o naredbi tar. Pritisnite tipku q da biste zatvorili stranicu s informacijama kada završite. Također možete pročitati online priručnik za tar.

    Ako koristite grafički Linux radnu površinu, možete koristiti alat za komprimiranje datoteka ili upravitelj datoteka koji je uključen u vašu radnu površinu za izradu ili izdavanje. tar datoteka. U sustavu Windows možete izdvojiti i stvoriti arhive. tar s besplatnim 7-Zip programom.