1.7-Zip压缩算法及归档格式支持
一、主要压缩算法
LZMA / LZMA2
- 特点:7-Zip 的默认算法,以高压缩率著称,但压缩/解压速度较慢。LZMA2 是 LZMA 的改进版,支持多线程加速。
- 应用格式:.7z、.xz(仅 LZMA2)。
BZip2
- 特点:平衡压缩率和速度,适合通用场景。
- 应用格式:.bz2、.bzip2、.tar.bz2。
Deflate
- 特点:广泛使用的快速压缩算法,压缩率中等。
- 应用格式:.zip、.gz、.jar。
PPMd
- 特点:针对文本文件优化,适合压缩重复性低的数据(如日志、代码)。
- 应用格式:.7z(需手动选择)。
LZ4 & Zstandard (实验性)
- 特点:超高速压缩/解压,适合对速度敏感的场景(如实时传输)。
- 支持情况:需通过插件或命令行启用。
二、支持的归档格式
创建和解压
- .7z(默认格式,支持多算法)
- .zip(支持 Deflate、BZip2、LZMA 等)
- .tar(仅打包,不压缩)
- .gzip (.gz)
- .bzip2 (.bz2)
- .xz(基于 LZMA2)
仅解压
- .rar(需安装额外插件)
- .arj、.cab、.chm、.deb、.rpm 等。
三、其他功能
- 加密支持:AES-256 加密(.7z、.zip 格式)。
- 分卷压缩:支持将大文件分割为多个小文件(如 .7z.001, .7z.002)。
- 多线程优化:LZMA2、BZip2 等算法支持多线程加速。
四、如何选择算法?
- 追求压缩率:选 LZMA2(.7z 格式)。
- 需要通用兼容性:用 Deflate(.zip 格式)。
- 快速压缩/解压:选 LZ4 或 Deflate。
- 文本文件优化:用 PPMd。
2. 使用7z命令进行压缩和解压的详细指南
适用于 Linux 和 Windows 环境(需安装 7-Zip 并确保 7z 命令可用)。
一、压缩文件/目录
1. 压缩为 .7z 格式(默认算法)
压缩单个文件或目录
7z a archive.7z /path/to/file_or_folder
示例:压缩当前目录下的 “data” 文件夹
7z a data.7z data/
高级参数:
7z a -mx=9 -p123456 archive.7z data/ # -mx=9(最高压缩率),-p(设置密码)
2. 压缩为 .zip 格式
使用 Deflate 算法(默认)
7z a archive.zip /path/to/file_or_folder
指定压缩方法(如 BZip2)
7z a -tzip -mm=BZip2 archive.zip data/
3. 压缩为 .tar、.tar.gz、.tar.bz2 格式
打包为 .tar(仅归档,不压缩)
7z a archive.tar /path/to/file_or_folder
打包并压缩为 .tar.gz(gzip 算法)
7z a -ttar archive.tar data/ && 7z a -tgzip archive.tar.gz archive.tar
打包并压缩为 .tar.bz2(BZip2 算法)
7z a -ttar archive.tar data/ && 7z a -tbzip2 archive.tar.bz2 archive.tar
二、解压文件
1. 解压 .7z、.zip、.tar 等格式
通用解压(自动识别格式)
7z x archive.7z -o/path/to/output # -o 指定输出目录(无空格)
示例:解压到当前目录
7z x archive.zip
解压带密码的文件
7z x -p123456 archive.7z
2. 解压 .tar.gz、.tar.bz2 格式
分步解压 .tar.gz
7z x archive.tar.gz # 先解压为 .tar
7z x archive.tar # 再解压 .tar 中的内容
一步解压(需安装 tar 命令)
tar -xzvf archive.tar.gz # Linux 原生命令更高效
三、常用参数
参数 | 说明 |
---|---|
a | 添加文件到压缩包 |
x | 解压并保留目录结构 |
-o | 指定输出目录(如 -o./output) |
-p | 设置密码(如 -p123456) |
-mx=9 | 最高压缩率(1-9,9为最慢但压缩率最高) |
-v | 分卷压缩(如 -v100m 分割为 100MB 文件) |
-t | 指定压缩格式(如 -tzip、-t7z) |
四、示例场景
1. 分卷压缩大文件
7z a -v100m -mx=9 bigfile.7z bigfile.iso # 分割为 100MB 的卷(bigfile.7z.001, .002...)
2. 加密压缩敏感文件
7z a -pMyPassword -mhe=on secret.7z secret.txt # -mhe=on(加密文件名)
3. 仅列出压缩包内容
7z l archive.zip # 查看压缩包内的文件列表
五、注意事项
安装 7-Zip:
- Windows:从官网下载安装,并将 7z.exe 添加到系统 PATH。
- Linux:使用包管理器安装(如
sudo apt install p7zip-full
)。
兼容性:
- .zip 格式兼容性最好,但 .7z 压缩率更高。
- 解压 .rar 需额外安装插件(如 p7zip-rar)。
性能建议:
- 高压缩率(-mx=9)会显著增加压缩时间,适用于存储场景。
- 快速压缩和解压建议使用
-mx=1
或.zip
格式。
掌握这些命令后,你可以高效地处理大多数压缩和解压需求,如果需要与其他工具兼容,推荐使用 .zip 或 .tar.gz;若追求极限压缩,.7z 是最佳选择。