zip/tar 分割压缩和合并解压

1. zip 分割压缩和合并解压

# 准备工作:将文件或文件夹打包为zip压缩包
zip -r src.zip ./src

1. 分卷压缩
# 压缩后src.zip为4.6G,将其分割,每个子压缩包不超过1G,生成5个压缩包src_split.z01(1G)、src_split.z02(1G)、src_split.z03(1G)、src_split.z04(1G)和src_split.zip(0.6G)
zip -s 1024m src.zip --out src_split.zip

2. 合并解压(方法1)
# 将上述5个压缩包合并为一个压缩文件single.zip
zip src_split.zip -s=0 --out single.zip
# 解压single.zip
unzip -d ./single.zip

3、合并解压(方法2)
# 例如将linux.zip文件夹压分割为:linux.zip.001, linux.zip.002, linux.zip.003, ... 则:
首先 cat linux.zip* > linux.zip  #合并为一个zip包
然后 unzip linux.zip #解压zip包

2. tar 分割压缩和合并解压

# 准备工作:打包压缩文件
tar -zcvf src.tar.gz ./src
#如果待压缩的文件夹中包含软链接或者硬链接,需要将其指向的文件(夹)也打包进去的话,需要加上参数-h,即
tar -zcvfh src.tar.gz ./src

注:如果只想打包,不想压缩,可以将参数z去除,即:tar -cvf imgs.tar ./imgs

1. 解压文件
tar -zxvf src.tar.gz
#解压到指定目录tmp
tar -zxvf src.tar.gz -C ./tmp

2.分割大文件,每个文件最大100M
2.1)分割为每个子压缩包不超过100M
split -b 100m src.tar.gz src.tar.gz

2.2)后缀设为两位数字
//-d 制定生成的分割包后缀为数字形式,-a 1 设定序列的长度为1(默认值为2)
split -a 2 -d -b 100m imgs.tar.gz imgs.tar.gz

3.合并文件
cat imgs.tar.gz.* > imgs.tar.gz

4. 打包压缩并分割大文件
tar -czvf - ./src| split -a 2 -d -b 100m - src.tar.gz

6. 合并并解压文件
cat src.tar.gz.* | tar -zxvf -
    原文作者:高压锅_1220
    原文地址: https://blog.csdn.net/u014651560/article/details/117948540
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞