如果您在开源世界中漫游,则有可能定期遇到 .tar.gz 文件。通常可以使用.tar.gz和.zip格式下载开源软件包。

tar命令用于通过将一组文件转换为归档文件来创建tar归档文件。它支持各种压缩程序,例如gzip,bzip2,lzip,lzma,lzop,xz和compress。 Tar最初旨在创建用于在磁带上存储文件的档案,这就是为什么它的名称为“ Tape ARchive”。

Gzip 是用于压缩tar文件的最流行算法。按照惯例,以 gzip 压缩的tar归档文件的名称应以 .tar.gz .tgz 结尾。

简而言之,以 .tar.gz 结尾的文件是使用gzip压缩的 .tar 存档。

tar命令还可以用于提取tar档案,显示档案中包含的文件的列表,向现有档案中添加其他文件以及其他各种操作。

在本教程中,我们将向您展示如何提取(或解压缩) tar.gz tgz 档案。

解压缩tar.gz文件

大多数Linux发行版和macOS都默认预安装了 tar 命令。

要提取tar.gz文件,请使用--extract-x)运算符,并在f选项之后指定存档文件名:

tar -xf archive.tar.gz

tar命令将自动检测压缩类型并提取存档。可以使用同一命令来提取用其他算法压缩的tar存档,例如 .tar.bz2

如果您是桌面用户,而命令行不是您的事,则可以使用文件管理器。要提取(解压缩)tar.gz文件,只需右键单击要提取的文件,然后选择“提取”。 Windows用户将需要一个名为 7zip 的工具来提取tar.gz文件。

-v选项将使tar命令更加可见,并在终端上打印要提取的文件的名称。

tar -xvf archive.tar.gz

默认情况下,tar将在当前工作目录中提取存档内容。使用--directory-C)提取特定目录中的存档文件:

例如,要将存档内容提取到/home/myfreax/files目录中,可以使用:

tar -xf archive.tar.gz -C /home/myfreax/files

从tar.gz文件中提取特定文件

要从tar.gz文件中提取特定文件,请在归档名称后附加要提取的文件名的空格分隔列表:

tar -xf archive.tar.gz file1 file2

解压缩文件时,必须提供其确切名称,包括由--list-t)打印的路径。

从存档中提取一个或多个目录与提取文件相同:

tar -xf archive.tar.gz dir1 dir2

如果您尝试解压缩不存在的文件,则会显示类似以下错误消息:

tar -xf archive.tar.gz README
tar: README: Not found in archive
tar: Exiting with failure status due to previous errors

您还可以通过使用--wildcards选项并引用该模式以防止shell解释它,基于通配符模式从tar.gz文件中提取文件。

例如,要提取名称以.js结尾的文件(JavaScript文件),可以使用:

tar -xf archive.tar.gz --wildcards '*.js'

从stdin中提取tar.gz文件

如果要通过从stdin中读取归档文件(通常是通过管道)来提取压缩的tar.gz文件,则需要指定解压缩选项。告诉tar通过gzip读取存档的选项为-z

在下面的示例中,我们使用 wget 命令下载 Blender 源,并将其输出通过管道传送到tar命令:

wget -c https://download.blender.org/source/blender-2.80.tar.gz -O - | sudo tar -xz

如果您未指定解压缩选项,则tar将指示您应使用哪个选项:

tar: Archive is compressed. Use -z option
tar: Error is not recoverable: exiting now

列出cable.js文件

要列出tar.gz文件的内容,请使用--list-t)选项:

tar -tf archive.tar.gz

输出看起来像这样:

file1
file2
file3

如果添加--verbose-v)选项,tar将打印更多信息,例如所有者,文件大小,时间戳..etc:

tar -tvf archive.tar.gz
-rw-r--r-- myfreax/users       0 2019-02-15 01:19 file1
-rw-r--r-- myfreax/users       0 2019-02-15 01:19 file2
-rw-r--r-- myfreax/users       0 2019-02-15 01:19 file3

结论

tar.gz 文件是使用Gzip压缩的 Tar存档。要提取tar.gz文件,请使用tar -xf命令,后跟档案名称。

如有任何疑问,请在下面发表评论。

如果你喜欢我们的内容可以选择在下方二维码中捐赠我们,或者点击广告予以支持,感谢你的支持