banner
约 900 字
3 分钟

7-Zip 命令行教程:脚本压缩的标配

摘要

7-Zip 是 Windows 上最好的免费开源压缩工具,其命令行 7z.exe 适合自动化脚本。本教程依据 7-Zip 官方手册,介绍压缩(a)、解压(x)、查看(l)、完整性测试(t)、密码加密与文件名加密,以及配合 PowerShell 的按日期备份脚本。

7-Zip 命令行教程:脚本压缩的标配

7-Zip 是 Windows 上口碑最好的免费开源压缩工具,压缩率高、无广告。除了图形界面,它自带的命令行 7z.exe 更是自动化压缩/解压脚本的好帮手。本教程依据 7-Zip 官方手册(7-zip.org,Manager 的 Command Line Version 用户手册)整理。

一、找到 7z.exe

安装 7-Zip 后命令行工具在 C:\Program Files\7-Zip\7z.exe。为了直接敲 7z 使用,两种做法:

  • C:\Program Files\7-Zip 加入系统 PATH

  • 用 Scoop 安装(自动配 PATH):scoop install 7zip

二、压缩

powershell
7z a -t7z archive.7z 文件夹\
7z a -tzip archive.zip 文件夹\    # 压成 zip,兼容性最好
  • a:add,添加到压缩包

  • -t7z / -tzip:指定格式(还有 -tgzip-txz 等)

  • -mx=9:压缩级别 0-9,9 最小最慢

加密压缩(文件名一并加密):

powershell
7z a -t7z secret.7z 文件夹\ -p你的密码 -mhe=on

三、解压

powershell
7z x archive.7z -o输出目录 -y
7z x archive.zip -oC:\temp -y
  • x:解压并保留目录结构(e 会把所有文件平铺到一层,容易乱,少用)

  • -o:输出目录(注意 -o 和路径之间不能有空格

  • -y:所有询问自动选是

四、查看与测试

powershell
7z l archive.7z        # 列出内容
7z t archive.7z        # 测试完整性(下载大文件后验证必备)

五、实战:备份脚本

用之前讲过的 Bash/PowerShell 思路做一个按日期打包的备份:

powershell
# backup.ps1
$date = Get-Date -Format "yyyyMMdd"
7z a -t7z -mx=5 "D:\backup\docs_$date.7z" "C:\Users\me\Documents\*" -xr!node_modules -xr!.git

-xr!目录名 表示递归排除,配合 Windows 任务计划程序每天定时跑,就是一个简易自动备份系统。

六、图形界面别忘了

日常手动操作直接用 7-Zip 图形界面:右键菜单集成 7-Zip、解压到当前文件夹;设置里可关联所有压缩格式。图形和命令行用同一套引擎,压缩率一致。

七、总结

需求

命令

压缩

7z a 包名.7z 目录\

压成 zip

7z a -tzip 包名.zip 目录\

解压

7z x 包名 -o输出目录 -y

加密

-p密码 -mhe=on

验证完整性

7z t 包名

备份排除目录

-xr!node_modules

压缩率上 7z 格式 > zip,兼容性上 zip 无处不在。发给别人用 zip,自己备份用 7z,是简单的最佳实践。

END