Linux 加快解压速度,使用 pigz 并行加速 Linux 压缩与解压 |
您所在的位置:网站首页 › 压缩包解压慢 › Linux 加快解压速度,使用 pigz 并行加速 Linux 压缩与解压 |
Linux下压缩或解压一个文件,通常使用tar.gz格式,对应的工具为 tar(打包工具)以及由-z参数指定的gzip(压缩解压工具)。 而默认的gzip工具是单线程工作的,在处理大文件时非常慢。 可以通过-I参数指定自定义的并行(多进程、多核)压缩解压工具 pigz 来进行加速。 pigz的官方自我介绍: A parallel implementation of gzip for modern multi-processor, multi-core machines 使用方法安装 pigz 工具包(yum 或 apt) 将常规参数中的-z去掉,换上-I 1 2 3 4# 压缩 tar -I pigz -cvf package.tar.gz /path/to/file_or_folder # 解压 (中括号内为可选,用于指定解压缩目标地址) tar -I pigz -xvf package.tar.gz [-C /path/to/extracted] 注意事项: 常规的tar方法中czvf或xzvf中前边的-可省了,且fv或vf顺序可调整 此处因为要加入-I参数,不能省略-,且vf参数只能是f在后(f紧挨指定的压缩文件路径) 原理解析 tar 通常的用法为: 1 2 3 4# 压缩 tar -czvf package.tar.gz /path/to/file_or_folder # 解压 (中括号内为可选,用于指定解压缩目标地址) tar -xzvf package.tar.gz [-C /path/to/extracted] 我们来看一下tar --help返回的帮助信息中这几个参数的含义: -c, --create create a new archive -x, --extract, --get extract files from an archive -z, --gzip, --gunzip, --ungzip filter the archive through gzip -f, --file=ARCHIVE use archive file or device ARCHIVE -C, --directory=DIR change to directory DIR -v, --verbose verbosely list files processed 以及另外一个我们今天使用的参数: -I, --use-compress-program=PROG filter through PROG (must accept -d) 通过以上信息,我们可以知道: -z 的意思是使用 gzip 进行压缩或解压 -I 可以自定义你使用的压缩解压工具 相关信息 网上也有其他一些方案,例如管道组合之类的,不太好记。这里推荐-I参数的方法。 其他用法及对应的性能测试的效果,参考: |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |