tar之多线程解压缩
关于tar
我们平常在服务器上操作时,经常会使用到tar命令,这是Unix和类Unix系统上的压缩打包工具,可以将多个文件合并为一个文件,打包后的文件后缀亦为“tar”。它可以在任何用户下使用。
同时,它有多个压缩率不同的版本,如tar.xz和tar.gz,前者的压缩率更高,但可能有兼容性问题。
如果大家使用过tar,一定都会有这个感受:当你在解压或者压缩一个超大文件时,速度会很慢!这是由于tar解压缩操作是用单线程去操作的,如果你在解压的时候,使用top命令,常常会看到某一个cpu飙升到100%。
今天我们就介绍一下,tar的多线程操作。
多线程安装
yum -y install pigz
pigz命令来自于英文词组”parallel implementation of gzip“的缩写,其功能是用于多线程的解压缩文件。与其他解压缩命令不同的是pigz命令支持多线程的并行处理方式,同比gzip能快60%以上,当然CPU的消耗也会更高。
#压缩文件
tar --use-compress-program=pigz -cvpf app.tar.gz app
#解压文件
tar --use-compress-program=pigz -xvpf app.tar.gz
--use-compress-program=pigz即代表使用的pigz工具,
说明
对压缩提升很大,会使用所有的 cores
当解压时,如果是多线程压缩的,那么解压会提速,如果是单线程压缩的,那么此参数无效
共 0 条评论