gzip — 文件压缩

gzip 用于压缩单个文件,使用 DEFLATE 算法,生成 .gz 文件。

命令说明

gzip 压缩单个文件并替换原文件(除非使用 -c 参数)。它只能压缩单个文件,不处理目录(需要与 tar 结合使用)。压缩后的文件保留原文件名并添加 .gz 后缀。

应用场景

  • 压缩日志文件
  • 压缩单个大文件
  • 与 tar 结合创建 .tar.gz 归档
  • 压缩备份文件

常用示例

示例 1:压缩文件(替换原文件)

bash
复制代码
gzip large_log.log
ls large_log.log.gz

示例 2:解压文件

bash
复制代码
gzip -d large_log.log.gz

或

bash
复制代码
gunzip large_log.log.gz

示例 3:压缩但保留原文件

bash
复制代码
gzip -c file.txt > file.txt.gz

示例 4:指定压缩级别(1 最快,9 最优)

bash
复制代码
gzip -9 important_data.dat

示例 5:查看压缩文件信息

bash
复制代码
gzip -l large_log.log.gz
plaintext
复制代码
         compressed        uncompressed  ratio uncompressed_name
            1023456             5242880  80.5% large_log.log

示例 6:解压到标准输出

bash
复制代码
gzip -dc file.txt.gz | grep "pattern"

help 参数详解

参数 长参数 说明
-d --decompress 解压模式
-c --stdout 输出到标准输出,保留原文件
-f --force 强制操作,覆盖已存在的文件
-k --keep 保留原文件
-l --list 查看压缩文件信息
-r --recursive 递归压缩目录中的文件
-t --test 测试压缩文件完整性
-v --verbose 显示详细信息
-1 到 -9 压缩级别(1 最快,9 最优,默认 6)
-n --no-name 不保存原始文件名和时间戳