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.
Xz je populární algoritmus pro kompresi souborů založený na algoritmu LZMA. Podle konvence název archivu tar komprimovaného pomocí xz končí buď .tar.xz nebo .txz .
Tento článek vysvětluje, jak používat tar příkaz k extrahování (nebo rozbalení) .tar.xz nebo .txz archivy.
Extrahování souboru tar.xz #
tar nástroj je ve výchozím nastavení předinstalován ve všech distribucích Linuxu a macOS.
Chcete-li extrahovat soubor tar.xz, vyvolejte tar pomocí příkazu --extract (-x ) a zadejte název archivního souboru za -f možnost:
tar -xf archive.tar.xz
tar 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 .tar.bz2 .
Pokud vám nevyhovuje příkazový řádek, můžete použít správce souborů GUI. Chcete-li extrahovat (rozbalit) soubor tar.xz, jednoduše klikněte pravým tlačítkem na soubor, který chcete extrahovat, a vyberte „Extrahovat“. Uživatelé Windows potřebují nástroj s názvem 7zip k extrahování souborů tar.xz.
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.xz
Ve výchozím nastavení tar extrahuje obsah archivu v aktuálním pracovním adresáři. Chcete-li extrahovat archivní soubory v určitém adresáři, použijte --directory (-C ).
Následující příklad ukazuje, jak extrahovat obsah archivu do /home/linuxize/files adresář:
tar -xf archive.tar.xz -C /home/linuxize/files Extrahování konkrétních souborů ze souboru tar.xz #
Chcete-li extrahovat konkrétní soubor(y) ze souboru tar.xz, připojte za název archivu seznam názvů souborů, které mají být extrahovány:
tar -xf archive.tar.xz file1 file2
Při extrahování souborů musíte zadat jejich přesné názvy včetně cesty, jak jsou vytištěny při tar je vyvolán pomocí --list (-t ).
Rozbalení jednoho nebo více adresářů z archivu je stejné jako rozbalení více souborů:
tar -xf archive.tar.xz 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.xz README tar: README: Not found in archive
tar: Exiting with failure status due to previous errors
--wildcards umožňuje extrahovat soubory ze souboru tar.xz 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 .png , použili byste:
tar -xf archive.tar.xz --wildcards '*.png' Extrahování souboru tar.xz z stdin #
Při extrahování komprimovaného souboru tar.xz č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í xz.
V níže uvedeném příkladu stahujeme linuxové jádro pomocí wget a jeho výstup přesměrujte do tar příkaz:
wget -c https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.5.3.tar.xz -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 obsahu souboru tar.xz #
Chcete-li zobrazit obsah souboru tar.xz, použijte --list (-t ) možnost:
tar -tf archive.tar.xz 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.xz -rw-r--r-- linuxize/users 0 2020-02-15 01:19 file1
-rw-r--r-- linuxize/users 0 2020-02-15 01:19 file2
-rw-r--r-- linuxize/users 0 2020-02-15 01:19 file3
Závěr č.
tar.xz soubor je archiv Tar komprimovaný pomocí xz. Chcete-li extrahovat soubor tar.xz, použijte tar -xf za ním následuje název archivu.
Pokud máte nějaké dotazy, zanechte prosím níže komentář.