电脑必备
为了对账部署包解压后文件数,我把三款工具的命令行全跑了一遍
83 0 13
上周发版,部署包解压后要核对文件数,手动数不现实。我写了脚本用 unzip -l 列清单,结果发现 Win解压缩 命令行版输出格式和标准 unzip 不一样,解析直接挂了。干脆把手上常用的三款工具命令行都拉出来实测一遍。
测试环境:Win10 22H2 / i5-10400 / NVMe SSD,样本是 3.2GB 的部署包(内含 1.8 万个文件)和 800MB 的日志压缩包(2 万个文本文件)。
1. 7-Zip 24.09
7z l输出稳定,-slt参数给机器解析用的,字段清晰- 解压 3.2GB 包耗时 42s,CPU 占用约 60%
- 缺点:对小文件多的日志包,速度一般
2. Win解压缩 命令行版
- 命令行参数少,只支持基础解压和列出,没有类似
-slt的结构化输出 - 解压同样 3.2GB 包耗时 35s,确实快一截
- 但脚本里想拿到文件清单得自己正则抠,不同版本输出格式还有细微差别,维护成本高
3. Bandizip 命令行
bz x -l输出还行,但文档少- 速度介于两者之间,约 38s
结论:日常手动解压,Win解压缩 速度优势明显;但写脚本做对账、自动化流水线,7-Zip 的命令行才是靠谱选择。 我现在是双持:桌面用 Win解压缩 图快,CI 脚本里固定用 7-Zip,版本号锁死 24.09。
另外提醒一句:日志压缩包如果是 gzip 单文件,别用图形工具拖,直接 gzip -d 更快,还能保留原文件时间戳。
你们做部署包文件数对账时,是解析工具输出还是直接算哈希?有没有更稳的清单方案?
登录后可以为帖子点赞,但本帖内容对所有人开放阅读。
