Compression provides more disk space and network efficiency in IT systems. There are different types, levels, and performance compression algorithms. tar.gz is defacto standard for Linux systems for a long time. In this tutorial, we will look at different ways to unzip or uncompress tar.gz files.

压缩可在IT系统中提供更多的磁盘空间和网络效率。 有不同的类型,级别和性能压缩算法。 tar.gz长期以来一直是Linux系统的事实上的标准。 在本教程中,我们将研究解压缩tar.gz文件的不同方法。

用tar命令解压缩 (Unzip with tar Command)

tar is our old friend who can provide compress and decompress of a lot of different compression formats. We will unzip test.tar.gz in this example with x,v  and f options.

tar是我们的老朋友,他可以提供许多不同压缩格式的压缩和解压缩。 在本示例中,我们将使用xvf选项将test.tar.gz解压缩。

  • x is used to extract

    x用于提取

  • v is used for verbose mode

    v用于详细模式

  • f is used for file mode

    f用于文件模式

$ tar xvf test.tar.gz
Unzip with tar
Unzip with tar
用焦油解压缩

从tar.gz中提取特定文件(Extract Specific File From A tar.gz)

We can extract a specific file from an *.tar.gz archive. We will just provide the file or directory name we want to extract to the end of the command. First listing the contents of the *.tar.gz file content and then providing the file name precisely. We will list file contents with the -tf option and extract the file named setup.py with the xf like below.

我们可以从*.tar.gz存档中提取特定文件。 我们将只提供要解压缩的文件或目录名称到命令末尾。 首先列出*.tar.gz文件内容的内容,然后精确提供文件名。 我们将使用-tf选项列出文件内容,并使用xf提取名为setup.py的文件,如下所示。

$ tar -tf zipstream-1.1.4.tar.gz

and extract a specific file.

并提取特定文件。

$ tar -xf zipstream-1.1.4.tar.gz zipstream-1.1.4/setup.py
Extract Specific File From A tar.gz
Extract Specific File From A tar.gz
从tar.gz中提取特定文件

从Stdin或标准输入解压缩(Unzip From Stdin or Standard Input)

Linux is a very elastic operating system that provides different original features. Standard input can be used for a tar.gz file. We can unzip a *.tar.gz data that will be fed from the standard input. We will use the | in order to redirect the file to the tar command. In this example, we will download the Linux kernel from kernel.org and redirect it to the tar command.

Linux是一个非常灵活的操作系统,提供了不同的原始功能。 标准输入可用于tar.gz文件。 我们可以解压缩一个*.tar.gz数据,该数据将从标准输入中馈送。 我们将使用| 为了将文件重定向到tar命令。 在此示例中,我们将从kernel.org下载Linux内核,并将其重定向到tar命令。

$ wget -c http://ftp.itu.edu.tr/Mirror/Apache//httpd/httpd-2.4.39.tar.gz -O - | tar -xz

用gunzip命令解压缩 (Unzip with gunzip Command)

gunzip is the unzip command provided by gzip suite. We can use this command without any option in order to unzip. But in this example, we use -voption which is used for verbose mode.

gunzipgzip套件提供的unzip命令。 我们可以不带任何选项使用此命令来解压缩。 但是在此示例中,我们使用-v选项,该选项用于详细模式。

$ gunzip -v test.tar.gz

使用7z命令解压缩 (Unzip with 7z Command)

7z  is my favorite compression algorithm and tool. It supports a lot of formats from zip to rar. gz format is also supported. We can provide e option in order to extract the tar.gz . 7z automatically detects the format.

7z是我最喜欢的压缩算法和工具。 它支持从zip到rar的多种格式。 还支持gz格式。 我们可以提供e选项以提取tar.gz 7z自动检测格式。

$ 7z e test.tar.gz
Unzip with 7z
Unzip with 7z
用7z解压缩

列出tar.gz目录(List tar.gz Contents)

If we want to unzip only some of the files from a tar.gz archive first we need to list files. We can list files different ways but we will look only single command which is tar.

如果首先要仅解压缩tar.gz归档文件中的某些文件,则需要列出文件。 我们可以以不同的方式列出文件,但我们只会看到tar这一个命令。

$ tar tvf test.tar.gz
List tar.gz Contents
List tar.gz Contents
列出tar.gz目录

仅解压缩指定目录(Unzip Only Specified Directory)

If we need to extract only some of the files or directories we need to specify them. We will use unzip command and provide the files and directories at the end of the command we want to extract. In this example, we will extract the file oldbackup/db.conf file from tar.gz file.

如果只需要提取某些文件或目录,则需要指定它们。 我们将使用unzip命令,并在要提取的命令末尾提供文件和目录。 在此示例中,我们将从tar.gz文件中提取文件oldbackup/db.conf

$ tar xvf test.tar.gz oldbackup/db.conf
LEARN MORE  7z Command Tutorial With Examples To Compress And Extract Files In Linux
了解更多7z命令教程,并提供在Linux中压缩和提取文件的示例

翻译自: https://www.poftut.com/unzip-tar-gz-file/

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐