pigz更快的压缩和解压工具

简介: pigz更快的压缩和解压工具

pigz(parallel implementation of gzip)是一个并行执行的压缩工具,解压缩比gzip快,同时CPU消耗是gzip的好几倍,在对短时间内CPU消耗较高不受影响的场景下,可以使用pigz。
环境
Centos7 RAM:2GB , CPU: 4vcpus

安装

安装epel扩展源

[root@localhost ~]# wget -O /etc/yum.repos.d/epel-7.repo http://mirrors.aliyun.com/repo/epel-7.repo
[root@localhost ~]# yum makecache

安装pigz

[root@localhost ~]# yum -y install pigz
如何压缩文件
下面几个是常用参数:

-p n: 压缩时使用的核心数量,默认使用所有核心
-k: 压缩后保留源文件
-l: 列出压缩输入的内容。
-6: 默认的压缩级别
-9: 压缩率最高,但是速度慢
-1: 压缩率最低,速度最快
例如:压缩FreeNAS-11.2-U7.iso文件,如果需要保留源文件,可以添加-k参数:

[root@localhost ~]# pigz -k FreeNAS-11.2-U7.iso
Linux中使用pigz工具更快的压缩和解压文件Linux中使用pigz工具更快的压缩和解压文件
可以使用-l选项查看压缩后文件的压缩率:

[root@localhost ~]# pigz -l FreeNAS-11.2-U7.iso.gz
compressed original reduced name
576426218 602378240 4.3% FreeNAS-11.2-U7.iso
Linux中使用pigz工具更快的压缩和解压文件Linux中使用pigz工具更快的压缩和解压文件

如何压缩目录
Pigz没有压缩文件夹的选项,只可以压缩单个文件。pigz可以和tar命令一起使用,来压缩文件夹。

[root@localhost ~]# tar -cvf - /var/log | pigz -k > logs.tar.gz
Linux中使用pigz工具更快的压缩和解压文件Linux中使用pigz工具更快的压缩和解压文件
查看一下压缩信息:

[root@localhost ~]# pigz -l logs.tar.gz
compressed original reduced name

698038    9093120   92.3%  logs.tar

[root@localhost ~]#
Linux中使用pigz工具更快的压缩和解压文件Linux中使用pigz工具更快的压缩和解压文件

如何解压文件
解压单个文件,解压方式:

[root@localhost test]# unpigz -d FreeNAS-11.2-U7.iso.gz

如果需要保留源压缩文件,请添加-k参数

[root@localhost test]# pigz -k -d FreeNAS-11.2-U7.iso.gz
解压一个目录,解压方式:

[root@localhost test]# tar -xf logs.tar.gz
Linux中使用pigz工具更快的压缩和解压文件Linux中使用pigz工具更快的压缩和解压文件

总结
pigz是一个并行执行的压缩工具,解压缩比gzip快,同时CPU消耗是gzip的好几倍,在对短时间内CPU消耗较高不受影响的场景下,可以使用pigz。

相关文章
|
2月前
|
存储 C++
基于C++的简易文件压缩与解压缩工具设计与实现
基于C++的简易文件压缩与解压缩工具设计与实现
45 3
|
2月前
|
存储 C++
基于Qt的简易文件压缩与解压缩工具设计与实现
基于Qt的简易文件压缩与解压缩工具设计与实现
82 1
|
2月前
|
Linux
linux命令行打包、压缩及解压缩
linux命令行打包、压缩及解压缩
16 0
|
2月前
|
算法 Python Windows
Python实现文件压缩和解压功能
Python实现文件压缩和解压功能
65 0
|
2月前
|
前端开发 JavaScript Java
文件在线压缩与解压系统
文件在线压缩与解压系统
|
2月前
|
Java 关系型数据库 MySQL
文件在线压缩与解压|基于Springboot实现文件在线压缩与解压
文件在线压缩与解压|基于Springboot实现文件在线压缩与解压
|
监控 算法 Cloud Native
开发函数计算的正确姿势——使用 brotli 压缩大文件
函数计算对上传的 zip 代码包尺寸限制为 50M。某些场景中代码包中会超过这一限制,比如未经裁剪的 serverless-chrome,类似的还有 libreoffice ,此外常见的还有机器学习训练的模型文件。本文会比较几种常见的解决大文件的方案,并重点介绍借助 brotli 提高压缩比的方法。
开发函数计算的正确姿势——使用 brotli 压缩大文件