在 Linux 中,zip 命令是一个常见的压缩工具,支持将文件或目录压缩成 .zip 格式。有时,单个压缩文件过大,可能需要将其拆分成多个小文件。本文介绍如何使用 zip 命令实现分卷压缩,以及如何解压缩这些分卷文件。


1. 使用 zip 进行分卷压缩

要将文件压缩成多个部分,可以使用 -s 选项来指定每个压缩文件的大小。例如,下面的命令会将 file1file2file3 进行压缩,并将每个压缩文件的大小限制为 100MB:

zip -s 100m archive.zip file1 file2 file3

参数解析:

  • -s 100m:指定每个分卷的最大大小为 100MB。
  • archive.zip:压缩文件的名称。
  • file1 file2 file3:要压缩的多个文件。

执行后,zip 会自动创建多个文件,例如:

archive.zip
archive.z01
archive.z02
...

这些文件共同组成完整的压缩包。


2. 如何解压分卷压缩文件

解压缩分卷文件时,只需要解压 .zip 主文件,unzip 命令会自动读取所有分卷:

unzip archive.zip

注意:

  • 所有的分卷文件(.zip, .z01, .z02 等)必须在同一目录下,否则 unzip 无法正确提取文件。

3. 适用场景

  • 大文件存储:当目标存储设备(如 FAT32 格式的 U 盘)对单个文件的大小有限制时,可以使用分卷压缩。
  • 网络传输:在上传或发送文件时,可以将其拆分成小部分,方便传输。
  • 备份数据:有些备份系统不支持超大文件,可以使用分卷压缩进行存储。

4. 其他实用技巧

  • 指定压缩级别:使用 -9 选项可以提高压缩率(但会稍微增加 CPU 计算时间):
zip -9 -s 100m archive.zip file1 file2 file3
  • 压缩整个目录
zip -r -s 500m archive.zip my_folder
  • 这里 -r 选项用于递归压缩整个目录。

总结

zip 命令的 -s 选项让我们可以轻松地将文件压缩成多个部分,适用于大文件存储、网络传输等场景。解压时,只需执行 unzip archive.zip,系统会自动处理所有分卷文件,恢复完整的数据。希望本文对你有所帮助!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注