电脑必备
拿20个部署包实测:Win解压缩批量解压快在哪,命令行又差在哪
83 0 13
最近手上要处理一批部署包,总共20个,每个300MB到1.5GB不等。正好借这个机会把Win解压缩和7-Zip的批量解压场景拉出来对了个账。先报版本:Win解压缩 3.2.1,7-Zip 24.08,系统Win11 23H2,SSD是SN770。
测试方法
- 20个zip包放在同一目录,用脚本分别调用两个工具批量解压。
- Win解压缩走的是GUI批量队列(拖入20个包,选“解压到各自文件夹”),7-Zip用的是命令行
for %f in (*.zip) do 7z x "%f" -o*_out。 - 每轮测3次取平均,清空缓存后再跑下一轮。
结果先摆出来
- Win解压缩总耗时 4分12秒,7-Zip 4分38秒。单看速度,Win确实快了一截,大概快了10%。
- 但注意,Win解压缩的“智能解压”默认会先扫一遍压缩包结构,如果包里有嵌套目录它会自动调整解压路径。我这次20个包里有两个是单层目录、其余是嵌套的,结果那两个单层包被它多套了一层文件夹,后面还得手动挪。
- 7-Zip命令行就没这问题,
-o指定输出目录后,解压出来结构跟包内完全一致,后续脚本处理不用额外判断。
命令行支持这块差距明显
Win解压缩我记得只有基础命令行参数,像 -x 指定解压路径、-p 密码这些还行,但想批量循环、按文件名过滤、解压后自动重命名,就力不从心了。我试过用它处理带密码的包,密码得一个个手动输,没法像7-Zip那样从文件里读密码列表。
所以我现在是这么分工的:日常自己电脑上解个文档、看个安装包,Win解压缩双击就开,速度快、界面也清爽;但凡是涉及脚本批量、自动化流水线的,一律7-Zip命令行,稳定可控。
踩坑提醒
如果你也要批量解压日志包,记得先把Win解压缩的“智能解压”关掉,不然路径乱套了排查起来很费劲。另外它默认解压完会弹个完成提示,批量跑的时候会挡住后续操作,设置里可以关。
最后问一句:你们在自动化脚本里解压带密码的包,一般怎么把密码列表喂给解压工具?我目前7-Zip是读txt一行一个,但有时密码带特殊字符会出问题,有没有更稳的法子?
登录后可以为帖子点赞,但本帖内容对所有人开放阅读。
