简介

gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多出”.gz”的扩展名。gzip有以下几个特征:

  • gzip 命令只能用来压缩文件,不能压缩目录,即便指定了目录,也只能压缩目录内的所有文件。
  • 压缩后会删除源文件。
  • 压缩后文件的后缀格式是 .gz
  • 该命令还支持解压缩。
  • 该命令不需要指定压缩包名。

语法

该命令的语法如下:

1
gzip [选项] 文件

该命令支持的选项有:

选项说明
-a 或–ascii使用 ASCII 文字模式
-c 或–stdout 或–to-stdout把压缩后的文件输出到标准输出设备,不去更动原始文件
-d 或–decompress 或 ----uncompress解开压缩文件
-f 或–force强行压缩文件。不理会文件名称或硬连接是否存在以及该文件是否为符号连接
-h 或–help在线帮助
-l 或–list列出压缩文件的相关信息
-L 或–license显示版本与版权信息
-n 或–no-name压缩文件时,不保存原来的文件名称及时间戳记
-N 或–name压缩文件时,保存原来的文件名称及时间戳记
-q 或–quiet不显示警告信息
-r 或–recursive递归处理,将指定目录下的所有文件及子目录一并处理
-S <压缩字尾字符串> 或 ----suffix < 压缩字尾字符串 >更改压缩字尾字符串
-t 或–test测试压缩文件是否正确无误
-v 或–verbose显示指令执行过程
-V 或–version显示版本信息
-<压缩效率>压缩效率是一个介于 1-9 的数值,预设值为 "6",指定愈大的数值,压缩效率就会愈高
–best此参数的效果和指定 "-9" 参数相同
–fast此参数的效果和指定 "-1" 参数相同

注:该命令常用的选项有 -d-l-r-v 等。

常用例子

压缩指定文件

1
2
3
4
5
6
7
# 语法
gzip 待压缩文件
# 示例,压缩 log.txt 文件为 log.txt.gz
gzip log.txt

# 保留原文件压缩
gzip -c log.txt>log.txt.gz

压缩指定目录下的文件

gzip 命令是不会压缩整个目录的,只会压缩目录下的所有文件。格式如下:

1
2
3
4
# 语法
gzip -r 待压缩目录
# 示例
gzip -r test/

显示压缩包内容

可以使用 -l 选项不解压查看压缩包内容:

1
2
3
4
# 语法
gzip -l 压缩包名
# 示例
gzip -l log.gz

解压缩指定压缩文件

当有一个 .gz 格式的压缩文件时,同样可以使用该命令进行解压缩:

1
2
3
4
5
6
7
# 语法
gzip -d 压缩文件名
# 示例
gzip -d log.gz

# 如果需要保留原文件解压
gzip -dc log.gz>log

小经验

gzip 中包含了几个方便处理压缩文件的命令,例如zcatzgrepzlesszdiff,用法和catgreplessdiff相仿,只不过操作对象变成了压缩包。

参考:
Linux命令之压缩gzip_gzip压缩命令_二木成林的博客-CSDN博客