在 CentOS 系统中,分卷压缩通常使用 tar 结合 split 命令,或者使用 zip 命令来实现。以下是几种常见的方法:
tar + split(最常用,推荐)适合压缩大目录,并分割成指定大小的文件。
tar -czvf - /path/to/dir | split -b 500M - file.tar.gz.
说明:
-czvf -:打包并用 gzip 压缩,输出到标准输出/path/to/dir:要压缩的目录split -b 500M:每个分卷 500MBfile.tar.gz.:分卷文件名前缀生成文件示例:
file.tar.gz.aa
file.tar.gz.ab
file.tar.gz.ac
cat file.tar.gz.* | tar -xzvf -
zip 分卷压缩适合需要跨平台(Windows/Linux)解压的情况。
zip -r -s 500M file.zip /path/to/dir
说明:
-s 500M:每个分卷 500MBfile.zip
file.z01
file.z02
unzip file.zip
如果未安装
zip/unzip:
yum install -y zip unzip
tar -czvf file.tar.gz /path/to/dir
split -b 500M file.tar.gz file.tar.gz.
7z(压缩率高)yum install -y p7zip p7zip-plugins
7z a -v500m file.7z /path/to/dir
7z x file.7z.001
100M
500M
1G
| 场景 | 推荐方式 |
|---|---|
| Linux 服务器 | tar + split |
| 跨平台 | zip |
| 极限压缩 | 7z |
如果你有 具体目录大小 / 分卷大小 / 是否需要保留权限,我可以帮你给出精确命令。