Tar je nástroj příkazového řádku používaný k vytváření a manipulaci s archivními soubory v systémech Linux a Unix. Příkaz Tar vytvoří archivní soubor .tar a poté jej zkomprimuje pomocí gzip nebo bzip2.
Můžete vytvořit jeden archivovaný komprimovaný soubor pomocí jednoho příkazu pro získání souborů .tar.gz nebo .tar.bz2. Příkaz Tar lze také použít k extrahování archivovaných souborů.
Podívejme se na několik praktických příkladů příkazu tar v akci.
1) Vytvořte archivní soubor .tar
Chcete-li vytvořit nekomprimovaný tar (.tar) , použijte volbu -c s příkazem tar následovně:
$ tar -cvf /path/to/foo.tar /path/to/foo/
Kde '/cesta/k/foo.tar' je umístění výsledného souboru tar a '/cesta/k/foo' je umístění souboru nebo adresáře, který se má použít jako vstup.
Příklad
$ tar -cvf powerlog.tar powerlog
a powerlog
$ ls
powerlog powerlog.tar
Můžete použít absolutní cestu namísto relativní, jak je znázorněno v příkladu.
2) Vytvořte archiv .gz pomocí tar
Syntaxe příkazu k vytvoření .gz
archiv s tar je:
$ tar -czvf /path/to/foo.tgz /path/to/foo/
Kde '/path/to/foo.tgz' je cílový komprimovaný soubor a '/path/to/foo /' je zdrojový adresář nebo soubor, který má být komprimován.
3) Vytvořte archiv .bz2
Možnost -j
se používá pro práci s archivy .bz2.
$ tar -cjvf /path/to/foo.tgz /path/to/foo/
4) Vytvořte archiv .gz a vylučte jej
Používáme --exclude
tar možnost vyloučit konkrétní příponu nebo seznam přípon souborů. Syntaxe je podobná níže:
$ tar -czvf /path/to/foo.tgz --exclude=\*.{jpg,gif,png,wmv,flv,tar.gz,zip} /path/to/foo/.
5) Použijte tar bez absolutní cesty pro komprimaci
Když ke kompresi souborů použijete tar a zadáte absolutní cestu, komprimovaný soubor bude mít ve svých metadatech úplnou cestu, takže když extrahujete obsah, bude v adresářích podobných absolutní cestě, která byla předána. Chcete-li se tomu vyhnout, přidejte . na konci příkazu.
$ tar -zcvf /path/to/foo.tgz -C/path/to/foo .
6) Tar všechny soubory začínající určitým písmenem
Vytvořte archiv tar všeho v aktuálním adresáři začínající na 'i'.
# tar -cvf fullbackup.tar i*
install.log
install.log.syslog
7) Přidat nový soubor do existujícího archivu tar
Připojte soubor nebo přidejte nový soubor do existujícího archivu tar.
# tar --append --file=backup.tar anaconda-ks.cfg
Výše uvedený příkaz připojí soubor anaconda-ks.cfg do archivu backup.tar
8) Přidání dvou archivních souborů s možností zřetězení
# tar --concatenate --file=backup.tar fullbackup.tar
Výše uvedený příkaz přidá obsah souboru fullbackup.tar do archivu backup.tar.
9) Rozbalte archivní soubor .tar
Chcete-li extrahovat nekomprimovaný archiv, který má často příponu .tar
, syntaxe příkazu je:
$ tar -xvf /path/to/foo.tar
Kde /path/to/foo.tar je absolutní/relativní cesta k umístění souboru tar. Např
$ tar -xvf powerlog.tar
x powerlog/
10) Rozbalte archiv .gz
Chcete-li extrahovat .gz
archive, použijeme syntaxi příkazu:
$ tar -xzvf /path/to/foo.tgz
Kde '/path/to/foo.tgz' je absolutní nebo relativní cesta ke komprimovanému souboru.
11) Rozbalte archiv .bz2
Syntaxe příkazu pro extrakci .bz2
archiv je
$ tar -xjvf /path/to/foo.bz2
Všimněte si, že můžete předat soubor .tgz, pokud byl komprimován pomocí -j
volba. Tar automaticky detekuje formát a dekomprimuje jej.
12) Extrahujte soubor .tar v určeném adresáři
Chcete-li rozbalit archiv tar do konkrétního adresáře, použijte -C
možnost poskytnout cílový adresář.
$ tar -xvf /path/to/foo.tar -C /path/to/destination/
13) Extrahujte soubor z archivu tar
Následující příkaz rozbalí soubor 'anaconda-ks.cfg' z archivu 'backup.tar'.
# tar --extract -vv --occurrence --file=./backup.tar anaconda-ks.cfg
-rw-r--r-- root/root 766 2008-04-12 06:52:42 anaconda-ks.cfg
14) Seznam obsahu archivu .gz
Předpokládejme, že chcete zobrazit pouze obsah .tgz
soubor, aniž byste je extrahovali, použijete syntaxi příkazu:
$ tar -ztvf /path/to/foo.tgz
Stačí nahradit '/path/to/foo.tgz' správnou cestou vašeho .tgz soubor
15) Vypsat obsah archivního souboru .bz2
Pokud chcete pouze zobrazit obsah .bz2
archivovat bez rozbalování, použijte příkaz:
$ tar -jtvf /path/to/foo.tgz
16) Zachovejte symbolické odkazy pomocí příkazu tar
Použijte tar -cvhf
pro zachování mých symbolických odkazů při generování archivu tar (k tomu použijte možnost „h“).
Závěr
Je těžké si zapamatovat všechny možnosti příkazu tar. Níže je seznam běžně používaných možností tar.
- j
:Používá se k filtrování archivu přes bzip2.
- v
:Spusťte příkaz v podrobném režimu pro zobrazení průběhu archivního souboru.
- f
:Zadejte název souboru archivu.
- W
:Používá se k ověření archivního souboru.
- z
:Filtrujte archiv pomocí nástroje gzip.
- t
:Používá se k zobrazení obsahu archivního souboru.
-c
:Vytvoří nový archiv obsahující zadané položky.
-r
:Používá se pro připojení nebo aktualizaci existujícího archivu pomocí souborů nebo adresářů
-t
:Seznam obsahu archivu na stdout.
-u
:Jako -r, ale nové položky se přidávají pouze v případě, že mají novější datum změny než odpovídající položka v archivu.
-x
:Extrahujte archivní soubor na disk.
U všech operací tar se obslužný program ukončí s 0
na úspěchu a >0
pokud dojde k chybě. Je důležité to pochopit, pokud používáte tar se skriptem.
Doufám, že se vám líbilo čtení tohoto návodu k příkazu tar. Zanechte prosím své návrhy v sekci komentářů níže.
Přečtěte si také:
- Jak zachovat symbolické odkazy v příkazu Tar