一、参考资料
多线程压缩软件 - pigz
Linux并行gzip压缩工具pigz
二、重要说明
-
tar或者系统默认的压缩工具,默认是单线程的。
-
pigz,默认使用所有CPU核心进行压缩和解压,可以手动设置线程数量,添加参数 -p 6。
-
压缩效果加速明显,解压加速效果不太明显。
-
tar与pigz的区别:tar对文件夹进行打包,pigz对包文件进行压缩
-
tgz是tar.gz缩写格式,解压没有区别
# 解压tgz压缩包,得到output.tar文件
pigz -d output.tgz
# 解压tar.gz压缩包,得到output.tar文件
pigz -d output.tar.gz
# 解包
tar -xzvf output.tar
或者tar -xvf output.ta
三、常用参数
- -0 ~ -9 压缩等级,数字越大压缩率越高,速度越慢,默认为6。
- -k --keep 压缩后不删除原始文件。
- -l --list 列出压缩输入的内容。
- -K --zip Compress to PKWare zip (.zip) single entry format。
- -d --decompress 解压缩输入。
- -p --processes n 使用n核处理,默认为使用所有CPU核心。
四、相关操作
- 下载
sudo apt-get install pigz
- 压缩单个文件夹
tar -cvf - kitti_data | pigz -6 > kitti_data.tgz
tar --use-compress-program=pigz -cpvf - kitti_data | split -b 3500m -d - kitti_data.tgz
# split -b:3500m分割单个文件
- 压缩多个文件夹
tar -cvf - dir1 dir2 dir3 | pigz > output.tar.gz
- 解压
# 解压缩
pigz -d kitti_data.tgz
# 解包
tar -xzvf output.tar
或者tar -xvf output.tar