gzip可以说是应用度最广的压缩指令了!目前可以解开compress,zip与gzip等软件所压缩的档案。

格式

1
$ gzip [options]... [files or directory]

常用选项

-c : 将压缩的数据输出到屏幕上,不改动原始文件,可以通过数据流导向来处理。

-d : 解压缩文件。

-f : 强制压缩文件。不理会文件名称或者硬链接是否存在以及该文件是否为符号链接。

-k : 在压缩和解压缩的过程中不删除原文件。

-l : 列出压缩文件的信息

-r : 如果指定目录,那么gzip将递归压缩目录下的全部文件。

-t : 检测一个压缩文件的一致性,看看文档是否有错误。

-v : 压缩过程可视化

**-# –fast –best:**压缩等级,-1最快,但压缩比最差,-9最慢,但压缩比最好。默认-6

示例

压缩一个文件:

1
$ gzip -v pic.png

压缩文件删除源文件

大家可以看到,压缩后生成了压缩文件pic.png.gz,而源文件被删掉了。整个文件的压缩率只有0.6%,这是由于图片文件本来就是经过压缩的,文本文件的压缩率比较高。

使用选项-k可以保留源文件

1
$ gzip -kv pic.png

压缩文件保留源文件

查看压缩文件的信息:

1
$ gzip -l pic.png.gz

压缩文件信息

解压缩文件:

1
$ gzip -d pic.png.gz

解压缩文件

递归压缩目录:

1
$ gzip -kvr dir1

复制文件

*注意:*gzip仅能对单一文件进行压缩,虽然也能针对目录来进行压缩,不过gzip的针对目录进行压缩指的是将目录内的文档'分别'进行压缩。在Windows系统中,使用WinRAR这一类的压缩软件将多个文档可以压缩成一个档案。在Linux中使用'打包指令'tar来完成类似功能。