bzip2是Linux里面压缩程序的另一个选择。它的压缩算法不同于gzip。与gzip相比有其优点,也有一些缺点。

bzip2的主要优点在于它压缩后文件的尺寸,对于相同文件,bzip2 压缩后的尺寸几乎总是小于gzip的压缩结果。有些时候,这个差距会相当大。这个优点对于网速慢的用户来说表现得尤为突出。需要提醒的是,当在 一些公共ftp 服务器上下载文件时,在.gz和.bz2文件中尽量选择.bz2文件是一种基本的网络礼节,因为这样可以减少服务器的负担以给更多人服务。

bzip2的缺点在于,它占用的CPU的使用率会比gzip更多。这就是说,压缩同一个文件,bzip2要比gzip使用更长的时间,占用更多的CPU资源。所以,当你在两者之中考虑选用哪种压缩程序的时候,需要衡量的是速度和压缩后的文件尺寸哪个对你来说更重要些。

格式

1
$ bzip2 [options]... [files]...

常用选项

-c : 将压缩的数据输出到屏幕上,不改动原始文件,可以通过数据流导向来处理。

-d : 解压缩文件。

-f : 强制压缩文件。不理会文件名称或者硬链接是否存在以及该文件是否为符号链接。

-k : 在压缩和解压缩的过程中不删除原文件。

-s : 在压缩过程中减少内存的使用。

-t : 检测一个压缩文件的一致性,看看文档是否有错误。

-v : 压缩过程可视化

**-# –fast –best:**压缩等级,-1最快,但压缩比最差,-9最慢,但压缩比最好。默认-6

示例

压缩文件:

1
$ bzip2 -v pic1.png

压缩文件删除源文件

大家可以看到,压缩后生成了压缩文件pic1.png.bz2,而源文件被删掉了。

使用选项-k可以保留源文件

1
$ bzip2 -kv pic2.png

压缩文件保留源文件

解压缩文件:

1
$ bzip2 -d pic1.png.bz2

解压缩文件

*注意:*和gzip一样,bizp2也仅能对单一文件进行压缩。