tar
umožňuje vytvářet a extrahovat archivy tar. Podporuje širokou škálu kompresních programů, jako je gzip, bzip2, lzip, lzma, lzop, xz a komprese.
Bzip2 je jedním z nejpopulárnějších algoritmů pro kompresi souborů tar. Podle konvence název archivu tar komprimovaného pomocí bzip2 končí buď .tar.bz2 nebo .tbz2 .
V tomto tutoriálu vysvětlíme, jak extrahovat (nebo rozbalit) tar.bz2 a tbz2 archivuje pomocí tar
příkaz.
Rozbalování souboru tar.bz2 #
Většina distribucí Linuxu a macOS je dodávána s tar nástroj předinstalovaný ve výchozím nastavení.
Chcete-li rozbalit soubor tar.bz2, použijte --extract
(-x
) a zadejte název archivního souboru za -f
možnost:
tar -xf archive.tar.bz2
tar
příkaz automaticky detekuje typ komprese a rozbalí archiv. Stejný příkaz lze použít k extrahování archivů tar komprimovaných jinými algoritmy, jako je .tar.gz nebo nebo .tar.xz .
Pokud jste uživatel plochy a příkazový řádek není vaší věcí, můžete použít Správce souborů. Chcete-li extrahovat (rozbalit) soubor tar.bz2, klikněte pravým tlačítkem na soubor, který chcete extrahovat, a vyberte „Extrahovat“. Uživatelé Windows budou potřebovat nástroj s názvem 7zip na extrahování souborů tar.bz2.
Pro podrobnější výstup použijte -v
volba. Tato možnost říká tar
pro zobrazení názvů extrahovaných souborů na terminálu.
tar -xvf archive.tar.bz2
Ve výchozím nastavení tar
rozbalí obsah archivu v aktuálním pracovním adresáři. Použijte --directory
(-C
) pro extrahování archivních souborů v konkrétním adresáři:
Chcete-li například extrahovat obsah archivu do /home/linuxize/files
adresář, zadejte:
tar -xf archive.tar.bz2 -C /home/linuxize/files
Extrahování konkrétních souborů ze souboru tar.bz2 #
Chcete-li extrahovat konkrétní soubor(y) ze souboru tar.bz2, připojte za název archivu seznam názvů souborů, které mají být extrahovány:
tar -xf archive.tar.bz2 file1 file2
Při extrahování souborů musíte zadat jejich přesné názvy včetně cesty, jak jsou vytištěny v --list
(-t
) je použita.
Rozbalení jednoho nebo více adresářů z archivu je stejné jako rozbalení více souborů:
tar -xf archive.tar.bz2 dir1 dir2
Pokud se pokusíte extrahovat soubor, který v archivu neexistuje, zobrazí se chybová zpráva podobná následující:
tar -xf archive.tar.bz2 README
tar: README: Not found in archive
tar: Exiting with failure status due to previous errors
--wildcards
volba umožňuje extrahovat soubory ze souboru tar.bz2 na základě vzoru zástupných znaků. Vzor musí být citován, aby jej shell nemohl interpretovat.
Chcete-li například extrahovat pouze soubory, jejichž názvy končí na .md
(Markdown files), byste použili:
tar -xf archive.tar.bz2 --wildcards '*.md'
Extrahování souboru tar.bz2 z stdin #
Při extrahování komprimovaného souboru tar.bz2 čtením archivu ze standardního vstupu (obvykle prostřednictvím potrubí), musíte zadat možnost dekomprese. -j
volba říká tar
že soubor je komprimován pomocí bzip2.
V příkladu níže stahujeme zdroje Vim pomocí wget
a jeho výstup přesměrujte do tar
příkaz:
wget -c ftp://ftp.vim.org/pub/vim/unix/vim-8.1.tar.bz2 -O - | sudo tar -xj
Pokud neurčíte možnost dekomprese, tar
vám ukáže, kterou možnost byste měli použít:
tar: Archive is compressed. Use -j option
tar: Error is not recoverable: exiting now
Výpis souboru tar.bz2 #
Chcete-li zobrazit obsah souboru tar.bz2, použijte --list
(-t
) možnost:
tar -tf archive.tar.bz2
Výstup bude vypadat nějak takto:
file1
file2
file3
Pokud přidáte --verbose
(-v
), možnost tar
vytiskne další informace, jako je vlastník, velikost souboru, časové razítko atd.:
tar -tvf archive.tar.bz2
-rw-r--r-- linuxize/users 0 2019-02-15 01:19 file1
-rw-r--r-- linuxize/users 0 2019-02-15 01:19 file2
-rw-r--r-- linuxize/users 0 2019-02-15 01:19 file3
Závěr č.
tar.bz2 soubor je archiv Tar komprimovaný pomocí Bzip2. Chcete-li extrahovat soubor tar.bz2, použijte tar -xf
příkaz následovaný názvem archivu.
Pokud máte nějaké dotazy, zanechte prosím níže komentář.