Linux Gzip命令教程(7个例子)

Linux提供了几个用于压缩/解压缩文件的命令行工具。其中一个是Gzip,它使用Lempel-Ziv编码(LZ77)进行压缩

Linux提供了几个用于压缩/解压缩文件的命令行工具。 其中一个是Gzip ,它使用Lempel-Ziv编码(LZ77)进行压缩操作。 在本教程中,我们将讨论gzip的基础知识,以及使用易于理解的示例提供的功能。

但在我们继续之前,值得一提的是,本教程中提到的所有示例/指令都已在Ubuntu 16.04LTS上进行了测试。

Linux Gzip命令

如您所了解的那样,Gzip命令行工具用于压缩或扩展文件。 以下是此命令的语法:

gzip [ -acdfhklLnNrtvV19 ] [--rsyncable] [-S suffix] [ name ...  ]

手册页面介绍了这个工具:

Gzip reduces the size of the named files using Lempel-Ziv coding (LZ77). Whenever possible, each 
file is replaced by one with the extension .gz, while keeping the same ownership modes, access and
modification times. (The default extension is -gz for VMS,  z  for  MSDOS, OS/2  FAT,
Windows NT FAT and Atari.)

以下Q&A风格的示例应该让您了解Gzip的工作原理。

Q1。 如何使用Gzip压缩文件?

这很简单 - 你所要做的就是将文件的名称作为参数传递给gzip命令,方式如下:

gzip [file-name]

这里有一个例子:

使用Gzip压缩文件

所以你可以看到该命令压缩了一个名为'file1'的文件,并生成了一个同名的.gz文件。 值得注意的是,该工具默认使用压缩版本替换原始文件。

Q2。 如何强制gzip不能删除原文件?

如之前的问答中所述,gzip的默认行为是删除原始文件。 但是,您可以使用-k命令行选项强制该工具不这样做。

gzip -k [file-name]

Q3。 如何使用gzip递归压缩文件?

要递归压缩文件,请使用-r命令行选项。 顾名思义,该选项将压缩主目录以及所有子目录中的文件。

gzip -r *

这里有一个例子:

使用gzip递归压缩文件

所以您可以看到所有文件(无论是在主目录还是子目录中)被压缩。

Q4。 如何使用gzip解压缩文件?

要解压缩文件,请使用-d命令行选项。

gzip -d [compressed-file-name]

以下是一个例子:

使用gzip解压缩文件

所以你可以看到file3.gz被解压缩以产生file3,然后被压缩的文件被删除。

注意 :要递归解压缩,请使用-r选项以及-d选项。

这可以使用-l命令行选项来实现。

gzip -l [compressed-file-name]

这里有一个例子:

与压缩文件相关的gzip列表详细信息

这些领域意味着什么:

gzip联机帮助页

Q6。 在某些情况下如何强制gzip执行压缩/解压缩操作?

假设您创建了.gz文件,同时确保原始文件未被删除(使用-k命令行选项)。 现在,如果您再次尝试创建相同的.gz文件(无论什么原因),gzip命令将不会让您这样做,或者至少要求您的权限。

强制gzip执行压缩/解压缩操作

现在,如果你想要的话,你可以执行gzip,不会产生这样的通知。 这可以使用-f命令行选项完成。

gzip -f [file-name]

Q7。 如何调节压缩速度?

Gzip命令还可以调节压缩速度。 这可以通过指定一个连字符( - ),后跟一个数字作为工具的命令行参数。 例如:

gzip -5 [file-name]

请注意,您可以使用1到9之间的任何数字,其中-1表示最快的压缩,而-9表示最慢(但最好)。 这是手册页面所说的:

如何调节压缩速度

结论

显然,Gzip命令是一个有用的工具。 什么使它更好是事实,它很容易理解和使用。 我们试图覆盖本教程中许多重要的命令行选项。 所以,一旦你完成了这些工作,请转到该工具的手册页 ,了解更多信息。