Crmgo Blog

tar na příkladech

tar na příkladech

Vytvoření archivu pomocí příkazu tar Bez použití komprese: tar cvf files.tar dir/ Pro použití komprese gzip přidáme přepínač z, pro použití komprese bzip použijeme přepínač j. tar cvzf files.tar.gz dir/ gzip a bzip2: bzip2 je pomalejší než gzip,…

tar na příkladech
    1. Vytvoření archivu pomocí příkazu tar

Bez použití komprese:
tar cvf files.tar dir/
Pro použití komprese gzip přidáme přepínač z a pro použití komprese bzip použijeme přepínač j.
tar cvzf files.tar.gz dir/

gzip a bzip2: bzip2 je pomalejší než gzip, ale velikost archivů vytvořených pomocí bzip2 je menší.

* c – vytváříme nový archiv
* v – vypisuje seznam zpracovávaných souborů.
* f – určuje, že jako kontejner archivu bude použit soubor s následujícím názvem.
* z – komprimuje archiv pomocí gzip.
* j – komprimuje archiv pomocí bzip2.
* x – extrahuje soubory z archivu.

    1. Extrahování souborů pomocí tar

Extrahujeme data ze souboru *.tar pomocí přepínačů xvf:
tar xvf files.tar

Pro extrahování souborů z archivů vytvořených pomocí gzip nebo bzip použijeme příslušně přepínače z nebo j.

    1. Seznam obsahu v archivu

Archiv bez komprese:
tar tvf files.tar
Pro zobrazení seznamu obsahu komprimovaného archivu gzip nebo bzip je třeba přidat příslušně přepínače z nebo j.

    1. Extrahování konkrétního souboru z archivu tar

Archiv bez komprese:
tar -xvf files.tar /location/of/the/file
> Podobně pro použití komprese použijeme stejné přepínače z nebo j.

    1. Extrahování konkrétního adresáře z archivu

Pro extrahování konkrétního adresáře (včetně vnořených podsložek a souborů) z tar archivu je třeba při použití příkazu tar zadat název extrahované složky.
tar -xvf container.tar /where/the/file/is
Extrahujeme několik složek z tar archivu:
tar -xvf files.tar /location/of/the/dir/ /location/of/the/dir2/
Jak vždy, použijeme přepínače z a j pro práci s komprimovanými archivy:

    1. Regulární výrazy při práci s tar

Následující příkaz extrahuje z archivu všechny soubory s příponou doc
tar -xvf files.tar --wildcards '*.doc'
kde * – wildcard *.doc – maska pro výběr souborů s příponou doc.

    1. Přidání souboru nebo složky do již existujícího archivu pomocí přepínače -r

Přidáme konkrétní soubor nebo složku do již existujícího archivu:
tar rvf files.tar some_our_file
Soubor some_our_file bude přidán do archivu s názvem files.tar. Přidání adresáře probíhá podobně:
tar rvf files.tar some_our_dir/
Nelze přidat soubor nebo složku do archivu vytvořeného s použitím komprese.

    1. Ověření dat v archivu pomocí přepínače -W

Po vytvoření archivu není na škodu jej ověřit pomocí přepínače W:
tar cvfW files.tar dir/
Stejně jako v předchozím případě však ověření selže, pokud máte před sebou archiv vytvořený s použitím komprese.

Někdy je třeba z velmi velkých tar archivů (.tar, .tar.gz, .tar.bz2) extrahovat nejen celý obsah, ale pouze několik konkrétních souborů. V takových případech není vhodné rozbalit celý původní tar archiv, protože to nejen vyžaduje významné zdroje (zejména zátěž disku), ale také může trvat dlouho.

Autoři tar samozřejmě předvíli možnost extrahovat z archivu pouze uvedené objekty. Je to velmi triviální – stačí uvést požadované soubory jako argumenty tar po samotném názvu archivu. Například:

tar -xf archive.tar myfile1 dir2/myfile2
Tento příkaz extrahuje z archivu archive.tar soubory myfile1 a dir2/myfile2. U komprimovaných archivů se postupuje obdobně – přidají se příslušné přepínače: „z“ pro .gz (gzip) a „j“ pro .bz2 (bzip2). Jedinou obtížností může být zadání přesného názvu souboru nebo úplné cesty k němu v archivu. Tento problém lze vyřešit pomocí funkce zobrazení stromu souborů/adresářů uložených v archivu. Například takto:
tar -tf archive.tar

Poznámka: příspěvek mohl vzniknout s pomocí AI a lidskou redakcí. Odpovědný: Dmytro Lomaka, Kaltenkirchen.