ZIP包“仅打包不压缩”对应存储模式(Stored),使用zip -0选项实现,如zip -0 -r archive.zip folder/;执行unzip -l可验证Method列为stored即生效。

ZIP包中“仅打包不压缩”对应的是存储模式(Stored),它跳过所有压缩算法,直接将原始文件按字节原样写入归档,因此速度极快,特别适合高性能运算前的临时打包场景——比如批量分发未压缩数据、构建容器镜像层、或准备需保持原始IO特征的测试样本。
用命令行快速启用存储模式
Linux/macOS终端中,使用 zip 命令配合 -0(数字零)选项即可强制启用存储模式:
-
zip -0 -r data_bundle.zip /path/to/large_files/:递归打包整个目录,不压缩任何文件 -
zip -0 config.json logs/*.log bundle.zip:只打包指定文件,全部以原始大小存入 -
zip -0 -q -r archive.zip . -x "*.tmp" "*.log":静默打包当前目录,排除临时和日志文件,仍保持存储模式
Windows系统下等效操作
系统自带右键菜单不支持直接选“无压缩”,但可通过以下方式实现:
- 使用 PowerShell 执行:
Compress-Archive -Path "C:\data\*" -DestinationPath "C:\bundle.zip" -CompressionLevel None - 若已安装 7-Zip,右键 →「添加到压缩包」→ 在「压缩方法」中选择 Store(不是 Deflate 或 LZMA)
- 避免使用「发送到 → 压缩(zipped)文件夹)」,该功能默认启用轻度压缩,无法关闭
为什么存储模式对高性能运算更友好
关键在于消除 CPU 编解码开销和数据变形:
- 解包时无需解压计算,读取即用,I/O 延迟接近裸文件访问
- 保留原始文件校验和(如 SHA256),便于快速一致性验证
- 避免压缩引入的内存抖动或缓存污染,尤其利于 NUMA 架构下的数据预热
- 对已压缩格式(如 .jpg、.mp4、.zst)再压缩无效,存储模式反而杜绝冗余处理
注意事项与验证方法
启用存储模式后务必确认是否生效:
- 执行
unzip -l archive.zip,观察输出中每项的“Method”列是否全为 stored(而非 deflating) - 对比压缩包大小:若与源文件总大小基本一致(±几KB元数据),说明未压缩成功
- 注意
-0不等于-1(最快压缩)或-9(最高压缩),它是独立的归档策略


















