背景:在服务器迁移过程中,有大量非结构化文件(主要是office文档和图片),目录结构太大,高达80-100G,传输耗时且容易受网络
等其他原因意外中断,以致于传输失败,于是采用分卷压缩,即使传输失败也不会导致全部进度失败,逐个文件回传,再逐个上传到服务器。
环境:ubuntu 16.04.3 x64
预安装
apt install p7zip-full
7zip压缩:将data.txt压缩成data.7z
7z a data.7z data.txt\
7zip解压缩:解压data.7z
7z e data.7z 不保持目录结构7z x data2.7z 保持目录结构
7zip查看压缩文档内容清单:
7z l xxbs.zip.001
........
2018-11-09 12:44:07 ....A 453443 373186 xxbs/20181109124407_983.jpeg
2018-11-09 12:44:08 ....A 366835 278164 xxbs/20181109124408_86.jpeg
2018-11-09 12:48:08 ....A 282123 171510 xxbs/20181109124808_579.jpeg
2018-11-09 12:48:11 ....A 351792 259474 xxbs/20181109124811_94.jpeg
2018-11-09 12:48:12 ....A 339825 227776 xxbs/20181109124812_599.jpeg
2018-11-09 12:48:12 ....A 366835 278164 xxbs/20181109124812_910.jpeg
2018-11-09 12:48:13 ....A 353833 282000 xxbs/20181109124813_115.jpeg
2018-11-09 12:48:13 ....A 453443 373186 xxbs/20181109124813_19.jpeg
2018-11-09 12:48:14 ....A 358079 252871 xxbs/20181109124814_376.jpeg
------------------- ----- ------------ ------------ ------------------------
36674230584 33355926910 70149 files, 1 folders
场景1:解压缩由Winrar压缩的zip分卷
tomcat@tomcat:~/WebContent/pic$ ls -rtl xxbs.zip*
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 20:57 xxbs.zip.002
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 21:06 xxbs.zip.001
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 21:45 xxbs.zip.031
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 21:46 xxbs.zip.025
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 21:46 xxbs.zip.020
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 21:47 xxbs.zip.015
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 21:47 xxbs.zip.010
-rw-rw-r-- 1 tomcat tomcat 862615882 11月 20 21:53 xxbs.zip.032
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 21:55 xxbs.zip.026
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 21:55 xxbs.zip.021
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 21:56 xxbs.zip.016
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 21:56 xxbs.zip.011
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:04 xxbs.zip.027
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:04 xxbs.zip.022
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:05 xxbs.zip.017
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:05 xxbs.zip.012
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:13 xxbs.zip.028
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:13 xxbs.zip.023
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:14 xxbs.zip.018
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:14 xxbs.zip.013
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:22 xxbs.zip.029
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:22 xxbs.zip.024
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:23 xxbs.zip.019
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:23 xxbs.zip.014
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:31 xxbs.zip.030
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:37 xxbs.zip.005
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:38 xxbs.zip.008
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:38 xxbs.zip.006
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:38 xxbs.zip.007
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:38 xxbs.zip.009
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:45 xxbs.zip.003
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 20 22:45 xxbs.zip.004
解压方法:
7z e xxbs.zip.001
场景2:解压由7zip生成的分卷
tomcat@tomcat:~/WebContent/pic/7zip$ ls -rtl
总用量 11438420
-rw-rw-r-- 1 tomcat tomcat 196905932 11月 21 05:12 xxbs.7z.001
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 21 05:20 xxbs.7z.019
-rw-rw-r-- 1 tomcat tomcat 1048576000 11月 21 05:20 xxbs.7z.018
.....
-rw-rw-r-- 1 tomcat tomcat 75563008 11月 21 05:22 xxbs.7z.011
-rw-rw-r-- 1 tomcat tomcat 56819712 11月 21 05:22 xxbs.7z.010
解压方法
7z e xxbs.7z.001
场景3:保持子目录下同名文件名覆盖
比如WebContent目录下有xxx,yyy,zzz文件夹,xxx下面又有aaa,bbb,ccc文件夹,我们把增量更新的资源拷贝过来,然后同名文件夹覆盖
tomcat@tomcat:/var/data# ls -rtl
总用量 520384
-rw-rw-r-- 1 tomcat tomcat 9988120 11月 2 23:03 abc.tar.gz
drwx------ 2 tomcat tomcat 16384 11月 20 10:03 lost+found
-rw-r--r-- 1 tomcat tomcat 8970201 11月 20 22:23 data.tar.gz
drwxr-xr-x 2 tomcat tomcat 4096 11月 20 22:51 logs
drwxrwxr-x 4 tomcat tomcat 4096 11月 21 06:53 el
drwxrwxrwx 9 tomcat tomcat 4096 11月 21 15:11 tomcat
drwxr-xr-x 18 tomcat tomcat 4096 11月 22 04:49 WebContent
-rw-r--r-- 1 tomcat tomcat 513879404 11月 22 05:05 WebContent.7z
解压方法:
7z x WebContent.7z
参考:
How to extract and join files xxx.zip, xxx.z01 and xxx.z02