Descompacte o arquivo compactado em .txz e .tar com um comando
13
Eu tenho um arquivo compactado em * .txz. Depois de desempacotá-lo, recebi um arquivo * .tar. Existe alguma maneira de descompactá-lo duas vezes com um comando? Quero dizer descompactar arquivo (* .tar) .txz com um comando?
É o mesmo que em qualquer arquivo compactado. Você nunca precisará criar uma cópia não compactada do arquivo original.
Algumas tarimplementações, como as versões recentes do GNU, tartêm opções integradas para chamar xzpor si mesmas.
Com GNU tarou bsdtar:
tar Jxvf file.tar.xz
No entanto, se você possui uma versão que possui -J, é provável que ela detecte xzarquivos automaticamente, portanto:
tar xvf file.tar.xz
será suficiente.
Se o seu GNU ou BSD tarfor muito antigo para suportar xzespecificamente, você poderá usar a --use-compress-programopção:
tar --use-compress-program=xz -xvf file.tar.gz
Uma das vantagens de tarchamar o utilitário do compressor é que ele pode relatar a falha do mesmo em seu status de saída.
Nota: se o tar.xzarquivo morto foi criado pixz, pixzpode ter adicionado um taríndice a ele, o que permite extrair arquivos individualmente sem precisar descompactar todo o arquivo morto:
pixz -x path/to/file/in/archive < file.tar.xz | tar xvf -
Este deve ser o caminho a percorrer
tar Jxvf file.txz
fonte
tar
, você pode usar-J
ou--xz
.Desembalar provavelmente não é a terminologia correta. Você pode descompactar com
xz
e untar comtar
.A página de manual do GNU
tar
(man tar
GNU tar é o padrão no Debian) especifica que você pode usar:e
xz
suporta a-d
opção, para que você possa usar:O que é muito menos claro na página de manual é isso
-xz
e-J
são atalhos para--use-compress-program xz
or-I xz
.E o que não está especificado na página de manual é que você pode simplesmente fazer
no GNU tar e que ele reconhecerá o arquivo tar como sendo compactado
xz
.fonte