7-Zip 是一款功能强大且免费的开源压缩软件,支持多种压缩格式(如 7z、ZIP、RAR、TAR 等),其命令行工具(7z.exe)提供了灵活的自动化压缩与解压能力,以下从基础语法、常用参数、实际应用场景及注意事项等方面详细介绍 7-Zip 压缩命令的使用方法。

7-Zip 压缩命令基础语法
7-Zip 命令行工具的核心命令格式为:
7z [命令] [压缩文件参数] [文件/目录参数] [选项参数]
命令 是操作类型(如 a 添加文件到压缩包、d 删除压缩包内文件等),压缩文件参数 指定生成的压缩包名称及格式(如 archive.7z、backup.zip),文件/目录参数 指定要压缩的源路径,选项参数 用于控制压缩级别、加密、分卷等行为。
核心命令与常用参数详解
添加文件到压缩包(a 命令)
a 命令是最常用的压缩命令,用于将文件或目录添加到新的或已存在的压缩包中。
基础格式:
7z a [压缩包路径] [源文件/目录] [选项]

示例:
- 压缩单个文件:
7z a archive.7z document.txt - 压缩整个目录(含子目录):
7z a backup.7z C:\Users\Admin\Documents - 压缩时排除特定类型文件(如排除
.tmp文件):7z a archive.7z C:\data -x!*.tmp
常用选项参数
选项参数用于控制压缩行为,以下是关键参数及其作用:
| 参数 | 作用 | 示例 |
|---|---|---|
-t[格式] |
指定压缩格式(如 7z、zip、gzip 等) | 7z a -tzip archive.zip files(生成 ZIP 格式) |
-m[0-9]= |
设置压缩级别(0=存储,9=极限压缩) | 7z a -mx=9 archive.7z files(最高压缩率) |
-p[密码] |
设置压缩密码(支持 AES-256 加密) | 7z a -pmypassword archive.7z secret.txt |
-v[大小] |
创建分卷压缩(单位:k/m/g) | 7z a -v100m split.7z large_file.iso(每卷 100MB) |
-mhe=on |
启用加密文件头(隐藏文件列表) | 7z a -p123 -mhe=on secure.7z files |
-r |
递归处理子目录(默认包含子目录) | 7z a -r project.7z C:\project(可选,默认已包含) |
-mx0 |
仅存储,不压缩(适用于二进制文件) | 7z a -mx0 archive.zip binaries\ |
-ssc |
跳过大小写相同的文件(避免重复) | 7z a -ssc archive.7z folder\ |
其他常用命令
- 列出压缩包内容:
7z l archive.7z - 测试压缩包完整性:
7z t archive.7z - 解压压缩包:
7z x archive.7z -oC:\extract(-o指定解压目录)
实际应用场景示例
高压缩率备份(7z 格式)
7z 格式采用 LZMA/LZMA2 算法,压缩率高于 ZIP,适合备份重要文档:
7z a -t7z -mx=9 -m0=lzma2 -mfb=64 -md=32m -ms=on backup.7z "D:\ImportantData"
参数说明:-m0=lzma2 使用 LZMA2 算法,-md=32m 设置字典大小为 32MB(提升压缩率,但需更多内存)。

加密压缩敏感文件
若需压缩并加密文件夹,可结合 -p 和 -mhe=on 参数:
7z a -t7z -pYourPassword123 -mhe=on secure.7z "D:\Private"
注意:密码区分大小写,且丢失后无法恢复,需妥善保管。
分卷压缩大文件(如 ISO 镜像)
对于超过 4GB 的大文件,可通过分卷压缩分割为多个小文件:
7z a -t7z -v1g -mx=9 large_split.7z "D:\ISO\windows.iso"
生成文件:large_split.7z.001、large_split.7z.002…(每卷 1GB)。
排除临时文件或系统目录
压缩项目时,需排除 .git、node_modules 等无用目录:
7z a project_backup.7z "C:\Project" -x!node_modules -x!.git -x!*.tmp
注意事项
-
格式兼容性:
- ZIP 格式兼容性最好,适合跨平台分享;7z 格式压缩率更高,但部分旧工具不支持。
- 若需解压 RAR 格式,需安装 7-Zip 的额外支持库(p7zip-rar)。
-
内存占用:
- 高压缩级别(如
-mx=9)和大字典(-md=32m)会占用较多内存,低配置设备建议降低级别。
- 高压缩级别(如
-
路径问题:
- 命令行中路径含空格时需用引号包裹,如
"C:\Program Files\app"。 - 分卷压缩时,合并文件需确保所有分卷在同一目录,并按顺序执行
7z x large_split.7z.001。
- 命令行中路径含空格时需用引号包裹,如
-
权限与安全:
- 加密压缩包的密码需通过安全渠道传递,避免明文记录在脚本中。
- 在 Windows 中,若需管理员权限操作系统目录,需以管理员身份运行命令行。
相关问答FAQs
Q1:7-Zip 命令行如何设置压缩时保留原始文件修改时间?
A:默认情况下,7-Zip 会保留文件的修改时间(MTIME),无需额外参数,若需强制覆盖,可添加 -mtc=off 参数禁用时间戳修改,但通常无需此操作。
Q2:如何通过 7-Zip 命令行批量压缩多个指定扩展名的文件?
A:使用通配符结合排除参数实现,仅压缩 .doc 和 .pdf 文件:
7z a docs.7z "C:\Files" -x!* -x!*.doc -x!*.pdf -i!*.doc -i!*.pdf
-x!* 排除所有文件,-i!*.doc 和 -i!*.pdf 重新包含目标扩展名文件。
