linux中bzip2命令
linux中bzip2命令详细介绍
在 Linux 中,bzip2 是一款高压缩比的命令行工具,适合处理文本、日志等文件,压缩率通常高于 gzip,但压缩速度较慢。以下是其核心用法和场景:
一、基础操作
1. 压缩文件(默认删除原文件)
bash
目标文件
- 压缩后原文件
test.txt会被删除,保留压缩包。 - 若需保留原文件,加参数
-k:bzip2 -k test.txt
2. 解压文件
bash
压缩包bunzip2 压缩包
3. 压缩目录(需配合
tar)
bash
压缩包名.tar.bz2 目录名
4. 查看压缩包内容(不解压)
bash
压缩包
二、进阶用法
1. 指定压缩等级(1-9,默认 9 级最高)
bash
test.txt
2. 批量压缩 / 解压
bash
*.txt*.bz2
3. 管道流式处理(不生成临时文件)
bash
large.log log.bz2log.bz2
三、常见场景对比
| 场景 | 命令示例 | 说明 | |
|---|---|---|---|
| 压缩单个文件 | bzip2 -k file.txt |
保留原文件,适合配置文件备份 | |
| 压缩目录 | tar -cjvf backup.tar.bz2 /data |
常用备份方案,体积比 tar.gz 小 | |
| 临时解压查看 | `bzip2 -dc file.bz2 | head` | 解压并预览前 10 行(不生成文件) |
| 清理旧压缩包 | find . -name "*.bz2" -mtime +30 -delete |
自动删除 30 天前的压缩包 |
四、注意事项
- 压缩比与速度:9 级压缩比最高但最慢,1 级最快(适合实时日志压缩)。
- 兼容性:
.bz2格式可在 Windows(通过 7-Zip)、macOS 等系统直接解压。 - 避免重复压缩:对已压缩的文件(如
.zip)再次压缩效果甚微,徒增计算资源。
若需处理大量小文件,建议先打包(tar)再压缩,效率更高。