将 zip 文件拆分成更小的 zip 文件

将 zip 文件拆分成更小的 zip 文件

我每周都需要将一堆 pdf 文件以 zip 格式上传到评分平台,但网站对每个 zip 文件的限制是 250Mb,而将 zip 文件拆分成更小的 zip 文件需要花费太多时间。

将 zip 分割成最大大小的块的最简单方法是什么?

可以在其他类 UNIX 平台(比如我工作用的 Mac)上运行的方法会很棒。

我正在寻找一个可以执行此操作的现有命令,或者一些简单的 python(或节点,或任何其他易于使用的语言)模块,以帮助我们编写一个可以执行此操作的小脚本。

答案1

你需要zipsplit这是该包的一部分zip

zipsplit -n $(( 250 * 1024 * 1024 )) your_zipfile.zip

它将现有的 zip 文件分割成更小的块。每个块的大小可以通过开关提供-n。它默认为 360000,因为几年前软盘的容量为 360 kB。

另一个选择是在压缩时首先创建块(参见zip,尤其是-s开关),从而避免了单独的zipsplit步骤:

zip -s 250m new-zipfile file1 file2 file3...

不幸的是unzip new-zipfile.zip无法处理通过以下方式创建的块zip -s,因此您必须在解压缩之前在目标端加入它们:

zip --fix new-zipfile --out joined-zipfile
unzip joined-zipfile

相关内容