4Sep

Ako komprimovať a extrahovať súbory pomocou príkazu tar v systéme Linux

Príkaz tar na Linuxe sa často používa na vytvorenie archívnych súborov. tar.gz alebo. tgz, ktoré sa tiež nazývajú "tarballs". Tento príkaz má veľa možností, ale stačí si spomenúť na niekoľko písmen, ktoré rýchlo vytvoria archívytar. Príkaz tar môže extrahovať aj výsledné archívy.

Príkaz GNU tar obsiahnutý v distribuciách Linux má integrovanú kompresiu. Môže vytvoriť archív. tar a potom ho komprimovať pomocou kompresie gzip alebo bzip2 v jedinom príkaze. Preto výsledný súbor je súbor. tar.gz alebo súbor. tar.bz2.

Komprimovanie celého adresára alebo jediného súboru

Použite nasledujúci príkaz na kompresiu celého adresára alebo jedného súboru v systéme Linux. Taktiež komprimuje každý iný adresár v adresári, ktorý zadáte - inými slovami, funguje rekurzívne.

tar -czvf name-of-archive.tar.gz /path/to/ adresár alebo súbor

Tu je to, čo tieto prepínače skutočne znamenajú:

  • -c: C obnoviť archív.
  • -z: Komprimovať archív pomocou g z ip.
  • -v: Zobrazenie pokroku v termináli pri vytváraní archívu, známeho aj ako režim " v erbose".Hodnota v je vždy voliteľná v týchto príkazoch, ale je to užitočné.
  • -f: Umožňuje špecifikovať ilename f archívu.

Povedzme, že máte v adresári názov "veci" v aktuálnom adresári a chcete ho uložiť do súboru s názvom archive.tar.gz. Spustili by ste nasledujúci príkaz:

tar -czvf archive.tar.gz stuff

Alebo povedzme, že v súčasnom systéme je na /usr/local/ adresár niečo a chcete ho skomprimovať do súboru s názvom archive.tar.gz. Spustili by ste nasledujúci príkaz:

tar -czvf archive.tar.gz /usr/local/ niečo

Komprimovať viac adresárov alebo súborov naraz

Zatiaľ čo tar sa často používa na kompresiu jedného adresára, môžete ho tiež použiť na kompresiu viacerých adresárov, viacerýchjednotlivé súbory alebo oboje. Stačí poskytnúť zoznam súborov alebo adresárov namiesto jedného. Povedzme napríklad, že chcete komprimovať adresár na stiahnutie /home/ubuntu/, adresár /usr/local/ a súbor /home/ubuntu/Documents/ notes.txt. Práve ste spustili nasledovný príkaz:

tar -czvf archive.tar.gz /home/ubuntu/ Na stiahnutie /usr/local/ veci /home/ubuntu/Documents/ notes.txt

Stačí len zoznam toľko adresárov alebo súborov, ktoré chcete zálohovať.

Vylúčte adresáre a súbory

V niektorých prípadoch možno budete chcieť komprimovať celý adresár, ale nezahrnúť určité súbory a adresáre. Môžete tak urobiť pridaním prepínača --exclude pre každý adresár alebo súbor, ktorý chcete vylúčiť.

Povedzme napríklad, že chcete komprimovať /home/ ubuntu, ale nechcete skomprimovať adresáre /home/ubuntu/ Downloads a /home/ubuntu/. cache. Tu je postup, ako to urobíte:

tar -czvf archive.tar.gz /home/ ubuntu --exclude = /home/ubuntu/ Súbory na stiahnutie --exclude = /home/ubuntu/. cache

Prepínač --exclude je veľmi výkonný.Nezahŕňa názvy adresárov a súborov - skutočne prijíma vzorky. Môžete s tým urobiť ešte viac. Môžete napríklad archivovať celý adresár a vylúčiť všetky súbory. mp4 pomocou nasledujúceho príkazu:

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

Použitie bzip2 Compression Namiesto

Zatiaľ čo gzip kompresia je najčastejšiepoužívaný na vytvorenie súborov. tar.gz alebo. tgz, tar tiež podporuje kompresiu bzip2.To vám umožňuje vytvárať komprimované súbory typu bzip2, často nazývané súbory. tar.bz2,. tar.bz alebo. tbz. Za týmto účelom stačí nahradiť príkaz -z pre príkazy gz v príkazoch tu -j pre bzip2.

Gzip je rýchlejší, ale zvyčajne komprimuje o niečo menej, takže získate o niečo väčší súbor. Bzip2 je pomalší, ale komprimuje trochu viac, takže dostanete o niečo menší súbor. Gzip je tiež bežnejší, s niektorými odizolovanými systémami Linuxu vrátane podpory gzip ako predvolenou podporou, ale nie bzip2.Všeobecne platí, že gzip a bzip2 sú prakticky rovnaké a obe budú fungovať podobne.

Namiesto prvého príkladu, ktorý sme použili na kompresiu adresára s vecami, by ste spustili nasledujúci príkaz:

tar -cjvf archive.tar.bz2 stuff

Výpis archívu

Akonáhle máte archív, môžete ho extrahovaťs príkazom tar. Nasledujúci príkaz vyberie obsah súboru archive.tar.gz do aktuálneho adresára.

tar -xzvf archive.tar.gz

Je to rovnaké ako príkaz na vytvorenie archívu, ktorý sme použili vyššie, s výnimkou prepínača -x nahradí prepínač -c. Určuje, že chcete x vytvoriť archív namiesto vytvorenia.

Možno budete chcieť extrahovať obsah archívu do konkrétneho adresára. Môžete tak urobiť pripojením prepínača -C na koniec príkazu. Napríklad nasledujúci príkaz vyberie obsah súboru archive.tar.gz do adresára / tmp.

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

Ak je súbor komprimovaný súborom bzip2, nahraďte v príkazoch "z" "j" znak "j".

Toto je najjednoduchšie možné použitie príkazu tar. Príkaz obsahuje veľký počet ďalších možností, takže ich nemôžeme tu všetky uviesť.Pre viac informácií.spusťte info tar príkaz na shell pre zobrazenie podrobnej informácie stránky tar. Stlačením tlačidla q ukončíte stránku s informáciami po dokončení.Môžete tiež prečítať návod na používanie tar online.

Ak používate grafickú pracovnú plochu Linuxu, môžete tiež použiť nástroj na kompresiu súborov alebo správcu súborov, ktorý je súčasťou vašej pracovnej plochy, a vytvoriť alebo extrahovať súbory. tar. V systéme Windows môžete extrahovať a vytvárať archívy. tar pomocou bezplatného 7-Zip utility.