批量分别压缩工具:支持随机密码、并行压缩和排除规则的批量打包方案

需求背景

开发和运维场景中,经常需要将多个文件夹分别压缩成独立的ZIP包:

  • 多个项目分别打包交付给不同客户
  • 批量归档历史项目,每个项目一个压缩包
  • 给不同用户分发不同的加密文件
  • 定期备份多个目录

手动逐个右键压缩效率低下,且无法批量设置不同密码。常见的压缩工具(如7-Zip、WinRAR)虽然支持命令行批量操作,但配置复杂,密码管理也不方便。

「批量分别压缩工具」提供了可视化的批量分别压缩方案,支持三种密码模式、三种压缩级别、并行压缩、排除规则等功能。

功能概述

  • 将源目录下的每个子文件夹分别压缩为独立的ZIP文件
  • 三种密码模式:固定密码、随机密码(自动记录)、不设密码
  • 三种压缩级别:存储(ZIP_STORED)、快速(ZIP_DEFLATED)、最大(ZIP_LZMA)
  • AES加密(设置密码时自动启用WZ_AES加密)
  • 并行压缩:1-16线程可调
  • 失败自动重试:0-10次可调
  • 排除规则:自动跳过.git、node_modules等无用文件,规则可自定义
  • 仅压缩文件模式:跳过子文件夹内容
  • 遍历子目录 + 保持原路径结构
  • 拖拽设置路径
  • 实时进度、速度、预计剩余时间显示
  • 同名压缩包自动重命名

密码模式详解

固定密码

所有压缩包使用同一个密码。在输入框中填入密码即可。

适用场景:内部团队统一密码分发、个人备份归档。

随机密码

每个压缩包自动生成一个独立的随机密码。可配置项:

配置项说明默认值
位数密码长度8
数字是否包含0-9
大写是否包含A-Z
小写是否包含a-z
符号是否包含!@#$%^&*等

生成的密码会自动记录到程序目录下的「压缩密码.txt」文件中,格式为:

==== 新一轮压缩任务 (2024-01-15 14:30:00) ==== 项目A.zip----Kx8mN2pQ 项目B.zip----R4tY7wE9 项目C.zip----J6hL3nB5

每次压缩任务会追加记录,不会覆盖之前的内容。

适用场景:给不同客户/用户分发不同密码的压缩包。

不设密码

不加密,直接压缩。

压缩级别说明

级别对应常量说明适用场景
存储(不压缩)ZIP_STORED只打包不压缩,速度最快已压缩的文件(如图片、视频)、追求速度
快速压缩(DEFLATED)ZIP_DEFLATED标准压缩,速度和压缩率平衡大多数场景
最大压缩(LZMA)ZIP_LZMA最高压缩率,速度较慢需要最小体积、文本类文件

默认选择"最大压缩(LZMA)"。

使用教程

1. 设置源目录

点击"浏览"或直接拖拽文件夹到窗口上半部分,设置包含待压缩文件夹的源目录。

软件会扫描源目录下的所有一级子文件夹,每个子文件夹压缩为一个独立的ZIP文件。

如果需要递归处理更深层的子目录,勾选"遍历子目录"。

2. 设置保存目录

点击"浏览"或拖拽文件夹到窗口下半部分,设置压缩包的保存位置。

勾选"保持原路径结构"后,压缩包会按照源目录的层级结构保存。

3. 配置密码

选择三种密码模式之一:

  • 固定密码:在输入框中填入密码
  • 随机密码:配置字符类型和长度
  • 不设密码:直接压缩

4. 配置压缩选项

  • 压缩级别:选择存储/快速/最大
  • 并行数:同时压缩的文件夹数量(默认4)
  • 重试次数:压缩失败时的自动重试次数(默认3)
  • 排除无用文件:勾选后自动跳过.git、node_modules等,点击"编辑规则"可自定义排除列表
  • 仅压缩文件:只压缩文件夹根目录下的文件,不包含子文件夹内容

5. 开始压缩

点击"开始"按钮,软件开始批量压缩。

处理过程中可以观察到:

  • 状态标签显示当前阶段(扫描中/处理中/已完成)
  • 进度条显示整体完成百分比
  • 速度和预计剩余时间实时更新
  • 日志区域显示每个压缩包的完成状态和密码

如需中断,点击"停止"按钮。

排除规则

默认排除以下文件和文件夹:

类型排除项
版本控制.git, .svn, .hg
Python缓存__pycache__, .pytest_cache, .mypy_cache, *.pyc, *.pyo
Node.jsnode_modules
虚拟环境.venv, venv, env
系统文件.DS_Store, Thumbs.db, desktop.ini
临时文件*.tmp, *.temp, *.log

点击"编辑规则"可以添加、删除或修改排除项,支持通配符(如 *.pyc)。

对于开发者来说,这个功能很实用——打包项目代码时自动跳过node_modules和.git等大体积无用目录,压缩包体积大幅减小。

并行压缩说明

并行数设置为N时,软件会同时压缩N个文件夹。使用线程池实现,每个压缩任务在独立线程中执行。

建议配置:

  • 机械硬盘:2-4并行(受磁盘IO限制)
  • SSD:4-8并行
  • 高性能SSD + 多核CPU:8-16并行

并行压缩时,日志中的完成顺序可能与文件夹顺序不同(先完成的先显示)。

加密说明

设置密码后,软件使用AES加密(WZ_AES模式)对ZIP文件进行加密。这是目前ZIP格式中安全性较高的加密方式。

解压时需要使用支持AES加密的解压工具(如7-Zip、WinRAR等)。

优点总结

  • 核心功能精准:每个文件夹分别压缩为独立ZIP包
  • 随机密码自动生成+自动记录,省去手动管理密码的麻烦
  • AES加密,安全性有保障
  • 并行压缩大幅提升速度
  • 排除规则可自定义,自动跳过无用文件
  • 失败自动重试,稳定性好
  • 拖拽操作,交互友好
  • 实时速度和ETA显示

获取方式

软件名称:批量分别压缩工具