Linux文件怎么打包与压缩

发布时间:2016-11-12 16:32

在Linux下支持的压缩命令非常多,常见的压缩文件的拓展名有*.gz,*.bz2,*.tar.gz,*.tar.bz2等。压缩解压是很常用的功能,但命令参数都稍有点复杂,因此对常用的几个用法做一个简单的总结。

1.gzip

gzip的全称是是GNUzip,是一个非常优秀文件压缩程序。除了*.gz文件外,gzip还可以用来解压*.zip,*.Z等格式的压缩文件。而且*.gz文件也可以用winrar解压,用起来非常方便。下面是一些常用的gzip参数:

gzip -option filename

-c:将压缩的结果显示到屏幕上,原文件不变,可以通过数据流重定向将结果写到文件中去。

-d:解压缩

- f:强制覆盖旧文件

-l:列出压缩包内储存的原始文件的信息,解压后的名字、压缩率等。注意加上-l后即便有-d参数也不会解压缩

-r:递归压缩目录下的所有文件

-t:测试压缩文件的完整性

-v:显示压缩比率

-1~9:压缩等级,数字越大,压得越小,速度越慢,默认等级为6

gunzip -option filename

解压缩命令,相当于gzip-d。所能使用的参数和gzip相同,当然少了-d,也不能设等级。

zcat -filename

查看压缩文件的内容

2.bzip2

bzip2是一个基于Burrows-Wheeler变换的无损压缩软件,它的压缩比率比gzip更高,不过相应的速度也会更慢一点。bzip2的用法和gzip基本相同,上面提到的参数基本都可以沿用(除了没有-r,没有-l,大写的-L表示License)。下面是bzip2多出的一些常用参数:

bzip2 -option filename

-k:保留原有文件

-s:使用较少的内存

bunzip2 -option filename

解压缩命令,相当于bzip2-d。

bzcat -filename

查看压缩文件的内容

bzip2 recover

从损坏的*.bzip2文件中恢复数据

3.tar

上面提到的命令都只能针对单个文件进行压缩。虽然可以加上-r参数来压缩目录,但只是对目录下的各个文件单独压缩,最终仍是目录。要想把一个文件夹压缩成一个压缩包。那么就要使用tar命令。tar的作用是将多个文件或目录进行打包。tar命令很多,下面是一些常用的。

tar -option filename

- c:创建新的打包文件

- d:将文件和tar包里的文件进行diff

- t:查看打包文件内含有哪些文件

- x:解打包或解压缩

- j:使用bzip2进行压缩/解压

- z:使用gzip进行压缩/解压

- r:将新的文件添加到tar包中去

- A:将已有的tar包添加到另一个tar包中去

- k:不覆盖系统上已有的文件

- v:显示正在处理的文件名

- p:保留文件原有的权限与属性

- f:接要被处理的文件名

-C:解压的时候指定目录

--exclude=filename:打包的时候不包含filename

通常的使用可以总结为以下几种模式:

查询: tar -j(z)tvf filname

压缩: tar -j(z)cvf 新建的文件名 要压缩的文件名

解压: tar -j(z)xvf 要解压的文件名 -C 解压的目录

ps:以上要注意tar不会自动生成文件的后缀名,所以新建的文件名需要自己加上后缀方便识别。还有

-f参数一定要放在最后和文件名相连,也可以单独独立出来防止出错。

Linux文件怎么打包与压缩的评论条评论