如何在 Linux 中使用 gzip 命令

如果您想共享多个文件,将它们全部压缩成一个文件是您可以选择的最佳解决方案。

在 Linux 上,有一个名为 gzip 的实用程序,旨在简化压缩文件和目录的整个过程。

您甚至可以操纵压缩比以获得更快的压缩!

在本指南中,我将分享有关如何使用 gzip 命令的实际示例。

在 Linux 上使用 gzip 命令

要使用 gzip 命令,您必须遵循给定的语法:

gzip [options] Target

简而言之,您所要做的就是在文件名后附加一个相对选项(以更改默认行为),这将完成您的工作。

使用 gzip 命令压缩文件

要使用 gzip 命令压缩文件,您所要做的就是将文件的文件路径附加到 gzip 命令:

gzip filename

为了 example,在这里,我压缩了一个 Debian ISO 文件:

gzip Debian.iso

但是如果你仔细观察,它会在压缩后删除原始文件。

那么如果你想保留原始文件怎么办? 那么,这就是你如何做的。

使用 gzip 命令时保留原始文件

所以如果你想在使用 gzip 命令时保留原始文件,你将不得不使用 -k 带有 gzip 的标志:

gzip -k filename

如您所见,它保留了我的原始文件!

使用 gzip 命令压缩多个文件

如果你想压缩多个文件,你所要做的就是在文件名后附加 gzip,剩下的就交给它了:

gzip file1 file2 file3

供大家参考,这里我压缩了多个ISO文件:

gzip Debian.iso Fedora.iso linuxmint-21.iso
在 linux 上使用 gzip 命令压缩多个文件

使用 gzip 命令检查压缩文件的内容

因此,如果您想在不执行解压缩的情况下验证压缩文件的内容,您可以使用 -l 旗帜:

gzip -c compressed_file

所以假设我有一个名为 textfile.gz 我想确认文件内容,所以我将使用以下命令:

gzip -l textfile.gzip
在 linux 上使用 gzip 命令检查压缩文件的内容

使用 gzip 命令递归压缩文件

您可能会遇到多种情况,您必须压缩子目录中的每个可用文件,在这种情况下,您可以从这种方法中受益。

首先,让我分享文件结构:

使用tree命令递归查看文件内容

现在,在这里,我想压缩 Debian 目录。

可以使用 -r 选项:

gzip -r Debian
在 linux 上使用 gzip 命令递归压缩文件

如您所见,它压缩了当前目录和子目录中的每个文件。

使用 gzip 命令解压文件

与 gzip 命令配对后,您可以使用 gzip 命令解压缩文件 -d 旗帜:

gzip -d compressed_file

为了 example,在这里,我想解压缩 Debian ISO 文件,所以我将使用以下命令:

gzip -dk Debian.iso.gz
在 linux 上使用 gzip 命令解压文件

使用 gzip 命令更改压缩和速度

gzip 命令允许您根据自己的喜好调整压缩。

因此,如果您追求最佳速度,您将获得最少的压缩量。

如果您愿意多花一些时间,您可以获得最好的压缩效果。

使用 gzip 命令更快地压缩文件

因此,如果您不关心压缩并希望尽快完成工作,您可以使用 --fast 旗帜:

gzip --fast file

在这里,我将使用 time 命令压缩 Debian ISO 文件以了解执行时间:

time gzip --fast -k Debian.iso 
在 Linux 上使用 gzip 命令更快地压缩文件

压缩一个 3 GB 的文件需要 1 分 5 秒!

使用 gzip 命令实现最佳压缩

如果您愿意牺牲一些时间来获得可能的压缩,则可以使用 --best 旗帜:

gzip --best file

在这里,我将使用相同的 Debian ISO 和时间命令,以便您可以在最佳压缩和最短时间之间有一个时间间隔:

time gzip --best -k Debian.iso
在 Linux 上使用 gzip 命令获得最佳压缩

压缩一个 3GB 的文件花了我 1 分 10 秒!

综上所述, 有5秒的间隔 在最佳压缩和最快压缩之间。

如果你处理的是大文件,这个差距会变得更大!

文件夹呢?

您是否注意到我只谈到了使用 gzip 压缩文件,而不是文件夹? 这是因为要压缩一个文件夹,你必须使用 tar 命令。

我希望你会发现给定的例子有帮助,如果你有任何疑问或建议,请在评论中告诉我。