在 Windows 中使用命令行提取 tar.xz 文件时出错

在 Windows 中使用命令行提取 tar.xz 文件时出错

我有一堆 tar.xz 文件需要解压。我尝试使用以下命令,但出现错误。

tar -xJf "S:This_Is\the path\to_my_file.tar.xz"

tar: Error opening archive: Can't initialize filter; unable to run program "xz -d -qq"

我尝试了这两种方法-xJf-xf结果都一样。我可以使用 7-zip 打开文件,但为此我必须先手动解压每个 .xz 文件,然后再解压,这有点麻烦。我以前可以使用 .bat 文件提取大量 tar.gz 文件,现在想对 tar.xz 文件执行相同操作。有没有办法让它工作?

答案1

xz是最现代的 LZMA2 压缩选项,显然 Windowstar程序不支持。

您应该使用其他支持该功能的程序,例如 7-Zip

如果最新的 7-Zip 不支持xz,请尝试其分支 7-Zip-zstd 它支持更多的压缩方法。

答案2

tar本身不进行压缩。相反,它依赖于外部压缩器,如和gzip。如果没有这些单独的命令,您将无法使用相应的压缩类型。bzip2xz

因此,您需要做的就是将xz二进制文件放入可以找到它的%PATH%地方tar,然后就可以开始了。

您可能能够xz使用与获得 相同的方式获得tar

答案3

正如其他答案所述,Windows 的 tar (bsdtar) 不附带 LZMA (.xz) 压缩工具。然而,他们误导你建议不能将 bsdtar 与 .xz 一起使用。

你需要做的就是安装 XZ Utils,它可以找到这里在“预建二进制文件”下。

相关内容