在 CentOS 上实现分卷压缩,常见做法有两种:
✅ 使用 tar + split(最常用、最灵活)
✅ 使用 7z(支持直接分卷压缩)
下面按场景详细说明。
这是 Linux 下最通用的方式,适合大文件/目录拆分。
tar -czvf - testdir | split -b 500M - testdir.tar.gz.
说明:
testdir:要压缩的目录或文件-c:打包-z:gzip 压缩-v:显示过程-f -:输出到标准输出split -b 500M:每个分卷 500MBtestdir.tar.gz.:分卷前缀生成文件示例:
testdir.tar.gz.aa
testdir.tar.gz.ab
testdir.tar.gz.ac
cat testdir.tar.gz.* | tar -xzvf -
✅ 自动合并所有分卷并解压
tar -cjvf - testdir | split -b 500M - testdir.tar.bz2.
解压:
cat testdir.tar.bz2.* | tar -xjvf -
yum install -y p7zip p7zip-plugins
7z a -v500m testdir.7z testdir
生成:
testdir.7z.001
testdir.7z.002
7z x testdir.7z.001
✅ 自动识别分卷
zip 分卷在 Linux 下兼容性差,建议用 7z 或 tar+split。
| 场景 | 推荐大小 |
|---|---|
| U盘存储 | 500M / 1G |
| 网络传输 | 100M / 200M |
| 大文件归档 | 2G |
| 方法 | 优点 | 缺点 |
|---|---|---|
| tar + split | 通用、稳定 | 需合并 |
| 7z | 直接分卷 | 需安装 |
| zip | 兼容 Windows | 功能弱 |
CentOS 首选:
tar + split
如果你有 具体需求(如:大于 4G、加密、Windows 兼容、自动脚本),可以告诉我,我可以给你定制命令。