目录
[TOC]
一、前言
1.1 一般我们使用的tar压缩命令
tar -czvpf test.tgz ./*
1.2 一般我们使用的tar解压命令
tar -xzvpf test.tgz
-c
意为--create
:创建新的tar存档文件(也就是说不指定压缩工具,只有-c
的话就是单纯的打包,不会压缩)-x
意为--extract
:提取文件-z
意为--gzip
:使用gzip
压缩-v
意为--verbose
:唠叨、详细输出日志-p
意为--preserve-permission
:保留文件的权限和属性信息-f
意为--file
:指定输出的文件名(所以-f
后面只能是文件名,也就是说-f
只能是最后一个参参,tar -zxfv test.tgz
就是错误的)
二、新方法
这里介绍一个更快的方法:pigz
2.1 pigz相对于gzip的优缺点
Pigz是一种基于多线程的gzip实现,它使用多个CPU核心以并行方式压缩和解压缩文件。相比于单线程gzip,pigz具有以下优点:
- 更快的速度:由于pigz使用多个CPU核心进行压缩和解压缩,因此可以显著提高处理速度,特别是在大文件或多个文件的情况下。
- 更高的效率:多线程设计可以更充分地利用系统资源,提高整体效率。
- 更好的压缩比:pigz使用了更先进的压缩算法,能够在保持压缩比的同时减少内存使用和磁盘I/O。
相比之下,gzip的主要优点是:
- 更广泛的支持:gzip是一个标准的UNIX工具,被广泛使用和支持。
- 更可靠的压缩:gzip使用较为简单的压缩算法,在某些情况下可以保证更好的压缩效果。
- 更少的依赖:gzip是一个单独的可执行文件,不需要任何额外的依赖项。
2.2 新的压缩命令
tar --use-compress-progress=pigz -cvpf test.tgz ./*
或者将--use-compress-progress=pigz
写为-I pigz
,注意I
只能是大写,tar的参数是大小写敏感的。
tar -I pigz -cvpf test.tgz
2.3 新的解压命令
tar --use-compress-progress=pigz -xvpf test.tgz
同样的,也可以写成:
tar -I pigz -xvpf test.tgz