拿Win解压缩的「智能解压」解压带密码的批量包,我数了数它到底猜了多少次
前阵子接了个外包,客户甩来一个压缩包,里面两百多个文件,全带同一个密码。我寻思这活儿简单,Win解压缩不是有「智能解压」吗?勾上,密码一填,坐等完事。结果等了二十分钟,进度条跟卡住似的,我打开任务管理器一看,好家伙,它在后台疯狂尝试各种可能的密码组合——敢情这「智能」俩字,是拿我的CPU在猜密码?
我较上劲了,拿三台不同配置的机器对账。老台式i5-8400、笔记本R7-5800U、还有台洋垃圾E5-2680v4,分别用Win解压缩的智能解压、普通解压手动输密码、以及7-Zip命令行带-p参数,解同一个两百文件的包,密码统一是client2024。
结果挺打脸。Win解压缩的智能解压在三台机器上都比手动输密码慢了一截,老台式上差了将近40秒,笔记本上因为U的调度策略,差距缩到15秒左右。我用Process Monitor抓了一下,发现它在解压每个文件时都会重新走一遍密码验证流程,而不是像7-Zip那样把密码缓存在会话里。说白了,所谓的智能,在批量带密码的场景下就是纯纯的负优化。
更绝的是,我故意把密码写错一位,想看看它报错逻辑。Win解压缩的智能解压不直接报错,而是继续闷头猜,猜了快三分钟才弹窗说密码可能不对。7-Zip呢?第一个文件就给你怼回来,明明白白告诉你密码错了。这要是在公司批量部署的时候,密码输错一位,你等它猜完黄花菜都凉了。
当然我也不是全盘否定,Win解压缩的右键菜单集成和拖拽体验确实比7-Zip顺手,适合那种双击解压就完事的轻度场景。但一旦涉及批量、带密码、或者命令行调用,它的智能解压就是个营销词。我后来写了个批处理,直接调7-Zip的7z x -p密码循环,两百个文件不到两分钟全搞定,还不会瞎猜密码浪费我电费。
所以我的结论是:Win解压缩当个右键解压工具用没问题,但别信它那些花里胡哨的智能选项。尤其是带密码的批量包,老老实实用命令行指定密码,或者干脆换个工具。
问一句:你们有没有遇到过那种解压到一半卡住、进度条不动、最后发现是软件在后台瞎猜密码的情况?用的什么工具?评论区说说,我准备再测一轮。
