linux系统常见压缩命令

时间:2021-07-11 16:08:04

在linux环境中,压缩文件的扩展名基本是:*.tar,*.tar.gz,*.tgz,*.gz,*.Z,*.bz2

*.Z compress程序压缩的文件 *.gz gzip程序压缩的文件 *.bz2 bzipa程序压缩的文件 *.tar tar程序打包的文件,并没有压缩过 *.tar.gz tar程序打包的文件,其中经过gzip的压缩 *.tar.bz2  tar程序打包的文件,其中经过bzip2的压缩

注意:单纯的tar功能仅是打包而已,即时将很多文件集结成一个文件,事实上它并没有压缩功能。压缩文件只能对单一文件进行操作

一、compress

这个基本不用了,用到的时候再去了解了

 

二、gzip,zcat

gzip是应用最广泛的压缩命令。目前gzip可解开compress、zip、gzip等软件所压缩的文件。gzip所压缩的文件为*.gz的文件名。

gzip命令:gzip [-cdtv#] 文件名

zcat命令:zcat 文件名.gz

参数:-c:将压缩的数据输出到屏幕上,可通过数据流重定向来处理

         -d:解压缩的参数

         -t:可以用来检验一个压缩文件的一致性,看看文件有无错误

         -v:可以显示出原文件/压缩文件的压缩比信息

         -#:压缩等级,-1最快,但是压缩比最差,-9最慢,但压缩比最好。默认是-6.

1、压缩文件命令:gzip -v 文件名

 

linux系统常见压缩命令

注:这个命令可显示压缩比例,并且这种默认状态下原本文件对本压缩成.gz文件,源文件已经不存在了

2、查看压缩文件的命令:zcat *.gz

linux系统常见压缩命令

注:cat可读取纯文本文件,那么zcat可取纯文本文件的压缩文件

3、文件解压缩命令:gzip -d *.gz

linux系统常见压缩命令

注:会将原本的.gz删除,产生原来的index1.html文件。不要使用gunzip命令

4、最佳压缩比例和保留原文件命令:gzip -9 -c 文件名>文件名.gz

linux系统常见压缩命令

注:主要是-c和>的使用可保留原文件

三、bzip2,bzcat

bzip2可提供更好的压缩比

bzip2命令:bzip2 [-cdkzv#] 文件名

bzcat命令:bzcat 文件名.bz2

参数:-c:将压缩的数据输出到屏幕上,可通过数据流重定向来处理

         -d:解压缩的参数

         -k:保留原文件,而不会删除原始文件

         -z:压缩的参数

         -v:可以显示出原文件/压缩文件的压缩比信息

         -#:压缩等级,-1最快,但是压缩比最差,-9最慢,但压缩比最好。默认是-6.

 

1、压缩文件:bzip2 -z 文件名

linux系统常见压缩命令

 

2、查看压缩文件:bzcat *.bz2

linux系统常见压缩命令

 

3、解压缩文件:bzip2 -d *.bz2

linux系统常见压缩命令

可使用bunzip2替换bzip -z

4、最佳压缩比例压缩文件并保留原文件:bzip2 -9 -c 文件名>文件名.bz2

linux系统常见压缩命令

 

5、压缩并保留原文件:bzip2 -z -k 文件名

linux系统常见压缩命令

 

四、tar打包

懒得打字了,书上拍个详细的

linux系统常见压缩命令

修正一点:-v是将文件的文件名/属性/权限都显示出来

1、简单记忆方式

(1)压缩命令:tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称

(2)查询 :tar -jtv -f filename.tar.bz2

(3)解压缩:tar -jxv -f filename.tar.bz2 -C 要解压缩在哪个目录目录(不加-C XX 会解压在当前目录)

 

注意:(1)-j可换成-z。(2)filename.tar.bz2是自己起的名字,tar不会主动创建文件名。如果不加参数[-j|-z]的话,文件名最好取为*.tar即可。如果加参数-j,代表是有bzip2支持,文件名取为*.tar.bz2。如果加参数-z,是gzip支持,取名为*.tar.gz。(3)-f filename是紧连一起的,由于参数顺序可变,故最好-f参数和其他分开(4)

“-f filename”独立使用。

2、-j和-z参数使用

(1)使用-z参数

tar -zpcv -f filename.tar.gz 文件或目录

(2)使用-j参数

tar -jpcv -f filename.tar.bz2 文件或目录

下面文件大小可看出用bzip2来压缩得到的压缩比更好,文件小

linux系统常见压缩命令

 

3、如何单独解开一个文件

(1)先查看到文件名

tar -jtv -f filename.tar.bz2|grep'关键字'

(2)将该文件解开

tar -jxv -f 打包文件.tar.bz2 待解开文件名

 

4、打包某目录,但不包含目录下的某些文件的做法

tar -jcv -f filename.tar.bz2 --exclude=文件名 --exclude=文件名 目录

 

五、压缩和分割文件

1、如何打包压缩一个文件并分割成多个文件

(1)tar -jpcv -f - 文件或目录|split -b 10k/m - 文件或目录.tar.bz2.

(2)tar -zpcv -f - 文件或目录|split -b 10k/m - 文件或目录.tar.gz.

实际上就是压缩命令和分割命令一句使用

 

2、合并文件

cat 文件或目录.tar.bz2.* > 文件或目录.tar.bz2

cat 文件或目录.tar.gz.* > 文件或目录.tar.gz

 

3、解压文件

tar -jxv -f 文件或目录.tar.bz2

tar -zxv -f 文件或目录.tar.gz

 

4、合并和解压一起用的话

cat 文件或目录.tar.bz2.*|tar -jxv

cat 文件或目录.tar.gz.*|tar -zxv