游客发表
我盯着那个 4.7GB 的压缩文件压缩包看了三秒,然后双击。压缩文件
进度条卡在 0%,压缩文件风扇开始狂转。压缩文件这场景太熟悉了——每次解压大文件,压缩文件电脑就像被掐住脖子。压缩文件ZIP、压缩文件RAR、压缩文件7z,压缩文件这些格式背后到底在干什么,压缩文件大多数人其实没想过。压缩文件压缩不是压缩文件魔法,它只是压缩文件把重复的东西折叠起来。比如一段文本里“的压缩文件”出现了 800 次,压缩算法就会记下“800个的压缩文件”,而不是老老实实存 800 遍。
但视频和图片不一样。JPG 和 MP4 本身已经压过了,再塞进 ZIP 里,体积几乎不变。我试过把一个 2GB 的电影文件夹打成 ZIP,出来还是 2GB。有人不信邪,非要压缩已经压过的文件,结果白等半小时。这事我干过,后来学乖了。
真正有意思的是“固实压缩”。7z 格式有个选项,把一堆小文件捆成一个大块再压。比如 1000 个源码文件,每个单独压只能省 20%,固实压缩能省 60% 以上。代价是——想改其中一个文件?整个包重来。我有个朋友存了十年的照片,用固实压缩打成 7z,后来想删一张,解压了整整一下午。
压缩包还有个隐藏功能:分卷。早年刻光盘,700MB 一张,大文件必须切成 .part1、.part2。现在网盘限速,有人又把分卷捡回来了。我见过最离谱的,一个 50GB 的游戏切成 200 个分卷,解压时少一个就全废。那种绝望,跟拼图丢了一片差不多。
密码呢?ZIP 的加密早就不行了。老式 ZipCrypto 加密,用 GPU 跑字典,一秒几百万次。7z 的 AES-256 好得多,但密码设成“123456”照样白给。我见过有人把公司财务报表压成 RAR 加密码,密码是“admin”——这跟没锁门有什么区别。
说到 RAR,得提一句。RAR 的压缩率通常比 ZIP 高一点,但它是专利格式。WinRAR 不买授权就不能商用,所以很多公司强制用 7z。7z 开源、免费、压缩率还高,就是慢。压同样的文件,ZIP 可能 30 秒,7z 得 3 分钟。时间换空间,看你怎么选。
还有个冷知识:压缩包能藏东西。把一张图片和一个 ZIP 拼接,改后缀成 .jpg,打开是图片,改回 .zip 就是压缩包。CTF 比赛里经常考这个。我试过一次,把 500MB 的压缩包塞进一张 2MB 的图后面,居然能正常解压。原理很简单——图片查看器读到结束标记就停了,后面的数据它不管。
但别拿这个干坏事。现在杀毒软件盯得紧,一个压缩包里有可执行文件加密码,直接报毒。我下载过一个开源工具,作者打包时加了密码,结果 Windows Defender 当场拦截。气得作者在 README 里写:“密码是‘infected’,求你别删。”
最后说个实用技巧。解压大文件时,别用 Windows 自带的资源管理器。它慢,而且遇到错误就卡死。用 7-Zip 或 Bandizip,能看进度、能跳过坏文件、能后台解压。我那个 4.7GB 的包,换 7-Zip 后 90 秒搞定。风扇终于不叫了。
压缩文件这东西,平时不觉得,一出问题就头疼。选对格式、设好密码、别压已经压过的,能省很多事。至于那些切成 200 个分卷的——我建议你直接删了重下。
友情链接