tar命令允许您创建和提取tar归档文件,它支持各种压缩程序,例如gzip、bzip2、lzip、lzma、lzop、xz和compress。本文介绍在Linux中提取tar.xz文件、从tar.xz文件中提取特定文件、从标准输入中提取tar.xz文件和从tar.xz文件中提取特定文件。
提取tar.xz文件 默认情况下,tar实用程序已预安装在所有Linux发行版和macOS上,参考在CenOS/Ubuntu/Debian上提取.xz文件的方法。 要提取tar.xz文件,请使用--extract(-x)选项调用tar命令,并在-f选项之后指定存档文件名: tar -xf archive.tar.xz tar自动检测压缩类型并提取存档,可以使用同一命令来提取使用其他算法(例如.tar.gz或.tar.bz2)压缩的tar存档。 如果不是您需要的命令行,则可以使用GUI文件管理器,要提取(解压缩)tar.xz文件,只需右键单击要提取的文件,然后选择“Extract”,Windows用户需要一个名为7zip的工具来提取tar.xz文件。 要获得更详细的输出,请使用-v选项,此选项使tar显示在终端上提取的文件的名称: tar -xvf archive.tar.xz 缺省情况下,tar将归档内容提取到当前工作目录中,要提取特定目录中的存档文件,请使用--directory(-C)。 以下示例显示了如何将归档内容提取到/home/ywnz/files目录: tar -xf archive.tar.xz -C /home/ywnz/files
从tar.xz文件中提取特定文件 要从tar.xz文件中提取特定文件,请在归档文件名称后附加要提取的文件名的空格分隔列表: tar -xf archive.tar.xz file1 file2 提取文件时,必须提供其确切名称,包括路径,如使用--list(-t)选项调用tar时所显示的那样。 从存档中提取一个或多个目录与提取多个文件相同: tar -xf archive.tar.xz dir1 dir2 如果您尝试解压缩档案中不存在的文件,则会显示类似以下的错误消息: tar -xf archive.tar.xz README 返回: tar: README: Not found in archive tar: Exiting with failure status due to previous errors --wildcards选项允许您基于通配符模式从tar.xz文件中提取文件,该模式必须加引号,以防止Shell程序解释它。 例如,要仅提取名称以.png结尾的文件,请使用: tar -xf archive.tar.xz --wildcards '*.png'
从标准输入中提取tar.xz文件 通过从标准输入(通常通过管道)读取档案来提取压缩的tar.xz文件时,必须指定解压缩选项,-J选项使tar文件使用xz压缩。 在下面的示例中,我们使用wget命令下载Linux内核,并将其输出通过管道传递到tar命令: wget -c https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.5.3.tar.xz -O - | sudo tar -xj 如果您未指定解压缩选项,则tar将显示您应使用的选项: tar: Archive is compressed. Use -J option tar: Error is not recoverable: exiting now
列出tar.xz文件内容 要列出tar.xz文件的内容,请使用--list(-t)选项: tar -tf archive.tar.xz 输出将如下所示: file1 file2 file3 如果添加--verbose(-v)选项,则tar将打印更多信息,例如所有者、文件大小、时间等: tar -tvf archive.tar.xz 返回: -rw-r--r-- ywnz/users 0 2020-02-15 01:19 file1 -rw-r--r-- ywnz/users 0 2020-02-15 01:19 file2 -rw-r--r-- ywnz/users 0 2020-02-15 01:19 file3
结论 tar.xz文件是使用xz压缩的Tar归档文件,要提取tar.xz文件,请使用tar -xf命令,后跟档案名称。
相关主题 |