注意:
- 大文件压缩及解压需要在后台进行,如果要查看解压详情,就要输出重定向。
- 远程服务器,要防止网络断开连接,导致终端关闭,此时终端断开,即使后台进行,解压以及压缩也会停止。解决方法:在指令前加nohup。
- 小文件可以在前面加压缩及解压指令前加time,查看压缩及解压时间。
- 压缩时最好在需要压缩的源文件夹的同级目录运行。
常用压缩及解压指令
.tar.xz
压缩率最高,但需要压缩的时间较长。
//压缩
time tar -Jcvf test.tar.xz test //压缩小文件查看压缩时间
nohup tar -Jcf test.tar.xz test & //大文件后台压缩(输出后回车、再回车)--这里不加参数v
nohup tar -Jcvf test.tar.xz test > test.xz.dump 2>&1 & //大文件后台压缩并将日志输出到test.xz.dump
//解压
tar -Jxvf test.tar.x //直接解压
time tar -Jxvf test.tar.xz -C test2/ //解压小文件到test2/查看压缩时间
nohup tar -Jxf test.tar.xz -C test2/ & //大文件后台解压到test2/(输出后回车、再回车)--这里不加参数v
nohup tar -Jxvf test.tar.xz -C test2/ > test.xz.dump 2>&1 & //大文件后台解压并将日志输出到test.xz.dump
.zip
time、nohup和后台运行使用方法同上
比较常用的文档压缩格式,最大的有点是跨平台,缺点是支持的压缩率不是很高。
//压缩
zip -r test.zip test
//解压
unzip test.zip //直接解压
unzip test.zip -d test2/ //解压到test2/
.tar
time、nohup和后台运行使用方法同上
好处是只消耗非常少的CPU及时间打包,只是一个打包工具,并不负责压缩
//压缩
tar -jcvf test.tar test
//解压
tar -xvf test.tar //直接解压
tar -xvf test.tar -C test2/ //解压到test2/
.tar.gz
time、nohup和后台运行使用方法同上
压缩时不会占用太多的CPU,就可以得到一个非常理想的压缩率。
//压缩
tar -zcvf test.tar.gz test
//解压
tar -zxvf test.tar.gz
tar -zxvf test.tar.gz -C test2/
.tar.bz2
time、nohup和后台运行使用方法同上
这种压缩格式是这几种方式中压缩率几乎最好的
//压缩
tar -jcvf test.tar.bz2 test
//解压
tar -jxvf test.tar.bz2
tar -jxvf test.tar.bz2 -C test2/
.7z
//压缩
7z a -r test.7z test/*
//解压
7z x test.7z -r -otest2/
-r 表示递归所有的子文件夹
-o 是指定解压到的目录,这里大家要注意-o后是没有空格的直接接目录
//分包压缩
nohup 7z a -v256m test.7z test > test.7z.dump 2>&1 & //压缩每个包256m,并输出日志到test.7z.dump
nohup 7z a -v1g test.7z test > test.7z.dump 2>&1 & //压缩每个包1g,并输出日志到test.7z.dump
nohup 7z a -v1g test.7z test -mx=0 > test.7z.dump 2>&1 & //压缩每个包1g,并输出日志到test.7z.dump, -mx=0表示只打包,不压缩。
转载请注明出处:http://www.wolfnx.com/2018/07/08/LinuxBigFileCompress
作者 : wolfnx
邮箱 : wolfnx@outlook.com
邮箱2 : lostnx@gmail.com