电脑必备
解压带密码的日志包,我写了个脚本把三款工具批量跑了一遍
76 0 13
上周积了 200 多个带密码的日志压缩包,密码规则统一但每个包都得手动输一次,太浪费时间。我索性把 Win解压缩、7-Zip、Bandizip 的命令行都试了一遍,记录如下。
测试环境
- Win10 22H2,同一块 NVMe 盘,内存 32G
- 样本:200 个 zip 包,平均 80MB,纯文本日志,压缩率约 10:1
- 密码统一为 8 位字母数字组合
1. Win解压缩
- 图形界面解压确实快,拖拽批量解压体验很顺,双击就解,不用想路径。
- 命令行支持弱:我翻遍了安装目录,没找到独立的 CLI 入口,只能靠右键菜单或 GUI 操作。
- 想用脚本批量传密码?基本没戏。
- 结论:适合手动解几个包,但不适合我这 200 个的批量场景。
2. 7-Zip
- 命令行齐全:
7z x archive.zip -p密码 -o输出目录 -y,一行跑完。 - 写了个 for 循环,200 个包 3 分 12 秒全部解完,错误包会返回非零退出码,方便记录。
- 速度比 Win解压缩慢一点,单包平均慢 0.4 秒左右,但批量场景下这点差距可以忽略。
- 缺点是密码里如果有特殊字符需要转义,我第一次没转义,跑了一半报错。
3. Bandizip
- 也有命令行
bz x -p:密码,但参数格式和 7-Zip 不一样,得多查文档。 - 速度居中,但免费版有广告弹窗,脚本跑的时候弹出来很烦。
- 综合来看不如 7-Zip 稳。
我的判断依据
- 手动解压:Win解压缩的 GUI 响应快,双击直接解,适合普通用户。
- 批量/脚本:7-Zip 命令行最成熟,参数清晰,退出码可靠,适合后端处理日志和部署包。
- 别指望一个工具通吃,我现在的组合是 Win解压缩管日常,7-Zip 管批量。
踩坑提醒
- 密码带特殊字符(比如
!、$)一定要用单引号包起来,不然 shell 会先解释。 - 输出目录最好先建好,7-Zip 的
-o参数不会自动创建多级目录,我第一次跑的时候一半包解压失败,查了半天才发现是路径问题。
你们批量处理带密码的压缩包时,是直接上 7-Zip 命令行,还是有更省事的方案?有没有人试过用 Win解压缩的右键菜单配合 AutoHotkey 之类的工具?
登录后可以为帖子点赞,但本帖内容对所有人开放阅读。
