在日常工作中压缩工具是必不可少的,我们可以使用压缩工具压缩文件,比如我们使用的代码压缩后会变的很小,这种压缩文件放到磁盘中可以节省磁盘空间。我们也可以使用压缩工具解压压缩文件,当遇到压缩文件时,首先需要把压缩文件解压,然后才能使用。我对一些常见的压缩工具做一个总结,也就是我们的专题: 压缩工具。
1.gzip这是比较老的压缩工具,但是仍然在使用。它是GUN官方推出的压缩软件,名字中的g表示GUN。它压缩后的文件带有.gz后缀。
2.bzip2这是一种较新的压缩工具,它使用的算法比较好,因此它的压缩率比gzip要好一些。它兼容gzip。它压缩后的文件带有.bz2后缀。
3.lzma(xz )这是最近新出现的压缩工具,就目前现有的压缩工具来说,它的压缩率最高。它兼容gzip和bzip2。它压缩后的文件带有.xz后缀。
4.tar它不是压缩工具,而是一种打包工具。打包就是把多个文件打包成一个文件,这样方便文件管理。我们通常会看到一些文件的后缀为: .tar.bz2或者.tar.gz 。最后面的是压缩格式,我们刚才已经介绍过了,该格式前面的.tar就表示打包文件。它经常和压缩工具一起使用,因此我们在本专题中顺便介绍一下它。
介绍完这些压缩工具后,我们介绍一下如何使用这些压缩工具。在linux系统中,使用命令可以完成几乎所有的工作,使用压缩工具也不例外。我们可以命令来使用这些压缩工具.
通用的命令格式是:command -operation file。
这里的command是tar。它是打包命令,表示使用打包工具对文件进行打包或者拆包; File就是要就打包并且压缩或者解决的文件,这个我就不多说了; operation表示打包时使用的操作; 接下来看看常用的operation. 打包并且压缩 :tar -jcv -f test.tar.bz2 test表示使用bzip2对test文件进行打包并且将其压缩成名字为test.tar.bz2的文件。
拆包并且解压 :tar -jxv -f test.tar.bz2表示使用bzip2对test.tar.bz2文件进行拆包并且将解压出来,解压后的文件默认在当前目录,其文件名与压缩前的文件名保持一致。
上面两条命令是常用的压缩命令,这些命令中的opereation就是jcvf或者jxvf。它们的意思在上面的命令格式中已经介绍过了,如果把peration中的j替换为z,就相当于把压缩工具从bzip2替换成zip。同理,把j替换成x就相当于把压缩工具从bzip2替换成xz。
说了这么多压缩工具,大家又不知道如何选择了。其实大家压缩时可以依据工作需要选择其中任意一种压缩工具。如果是解压缩的话,那么只需要依据文件的后缀来选择这压缩工具就行。此外,当前最新的压缩工具xz可以兼容比它旧的压缩工具。这么看来,你只需要使用它就可以完成常用的压缩和解压工作。
目前,GUN提供的大部分源代码中都提供gz和bz2两种压缩格式的文件。如果源代码最新几年有更新的话,除了提供以上两种格式外,还会提供了xz这种压缩格式。比如GUN中常见的Emacs。它的源代码在版本:22.3前只提供gz一种压缩格式的文件,在此版本后到版本:24.1之前提供了gz和bz2两种压缩格式,从版本:24.2开始提供gz,bz2和xz三种压缩格式的文件。Emacs是一款经典的GNU工具,它在不断完善和发展,从它的版本历史可以看作是压缩工具的发展缩影。
我总结的这三种压缩工具,大家不需要专门安装。因为在大部分Linux发行版本中都已经安装好了这几种压缩工具,我们只需要使用就可以,下面给大家看看我使用的Mint中安装的压缩工具,这是系统自带的,我没有单独安装过它们。
~$ which tar /bin/tar ~$ which gzip /bin/gzip ~$ which bzip2 /bin/bzip2 ~$ which xz /usr/bin/xz关于压缩工具的专题就介绍到这里,以后有好的经验了,我再和大家分享。