如何在不提取任何内容的情况下将 .tar.xz 文件解压为 .tar 文件?

如何在不提取任何内容的情况下将 .tar.xz 文件解压为 .tar 文件?

我有 -

file1.txt,,,,,file2.txtfile3.txtfile4.txtfile5.txt

现在,我知道了——

tar -cvf archive.tar file[1-5].txt

接下来,我会

xz archive.tar

我得到了archive.tar.xz

现在,我怎样才能取回我archive.tararchive.tar.xz

对于gzip算法,命令是gunzip

对于bzip2算法,命令是bunzip2

有没有类似的xz算法命令?

答案1

是的。请参阅man xz

NAME
       xz,  unxz, xzcat, lzma, unlzma, lzcat - Compress or decompress .xz and
       .lzma files

SYNOPSIS
       xz [option...]  [file...]

COMMAND ALIASES
       unxz is equivalent to xz --decompress.
       xzcat is equivalent to xz --decompress --stdout.
       lzma is equivalent to xz --format=lzma.
       unlzma is equivalent to xz --format=lzma --decompress.
       lzcat is equivalent to xz --format=lzma --decompress --stdout.

[. . .]

所以你只是想要unxz archive.tar.xzxz --decompress archive.tar.xz

请注意,tar可以为您完成所有这些操作,没有必要先创建 tar 存档然后压缩它,您可以创建压缩文件:

tar -cJvf archive.tar file[1-5].txt

这将产生archive.tar.xz。来自man tar

       -J, --xz
              Filter the archive through xz(1).

然后,您可以通过以下步骤解压缩以恢复原始文件:

tar -xJvf archive.tar.xz

相关内容