文件与文件系统的压缩与打包

一、linux系统常见的压缩文件扩展名

*.z    compress程序压缩文件

*.gz     gzip程序压缩文件

*.bz2   bzip2程序压缩文件

*.tar     tar程序打包的数据,并没有压缩过

*.tar.gz   tar程序打包的文件,经过gzip压缩

*.tar.bz2    tar程序打包的文件,经过bzip2压缩 

linux中常见的压缩命令是gzip与bzip2,compress不在流行。gzip是由GNU计划所开发出来的压缩命令,该命令已经替换了compress。后来GNU有开发出了bzip2这个比gzip更好的压缩命令。由于这些压缩命令仅能针对一个文件来压缩和加压缩,如果需要压缩或解压缩一大堆文件,就很麻烦。为了解决这个问题,tar命令孕育而生,可以将很多文件打包成一个文件。

二、gzip,zcat

gzip可以说是应用最广泛的压缩命令了。目前gzip可以解开compress、zip与gzip等软件所压缩的文件。

1.语法

gzip -[cdtv#] 文件名

2.参数

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

-d:解压缩的参数

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

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

-#:压缩等级,-1最快,压缩比最差,-g最慢,压缩比最好,默认是六

3.zcat读取压缩文件内容

 4bzip2、bzcat

bzip相对于gzip来说具有更好的压缩比

1.语法

bzip2 -[cdkzv#] 文件名

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

-d:解压缩的参数

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

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

-#:压缩等级,-1最快,压缩比最差,-g最慢,压缩比最好,默认是六

三、打包命令

tar命令详解

-c: 建立压缩档案

-x:解压

-t:查看内容

-r:向压缩归档文件末尾追加文件

-u:更新原压缩包中的文件

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个

下面的参数是根据需要在压缩或解压档案时可选的。

-z:有gzip属性的

-j:有bz2属性的

-Z:有compress属性的

-v:显示所有过程

-O:将文件解开到标准输出

参数-f是必须的

-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。

# tar -cf all.tar *.jpg 这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。
# tar -rf all.tar *.gif 这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。 
# tar -uf all.tar logo.gif 这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。 
# tar -tf all.tar 这条命令是列出all.tar包中所有文件,-t是列出文件的意思 
# tar -xf all.tar 这条命令是解出all.tar包中所有文件,-x是解开的意思

查看
tar -tf aaa.tar.gz   在不解压的情况下查看压缩包的内容

压缩

tar –cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg

tar –czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz

tar –cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2

tar –cZf jpg.tar.Z *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z

解压

tar –xvf file.tar //解压 tar包

tar -xzvf file.tar.gz //解压tar.gz

tar -xjvf file.tar.bz2   //解压 tar.bz2tar –xZvf file.tar.Z //解压tar.Z

原文地址:https://www.cnblogs.com/csms/p/10072559.html