linux常用压缩命令


我们在网络上下载的文件大都是经过压缩过的压缩文件,例如通过linux内核官网下载的linux内核文件往往是这样的: linux-2.6.1.tar.bz2、linux-2.6.1.tar.gz、linux-2.6.1.tar.xz。 文件后缀名为tar.bz2、tar.gz或者tar.xz,这是linux内核最经常用的三种压缩方式了。 为了节省磁盘空间,或者在通过网络传送文件的时候节省网络传输时间,经常需要将文件进行压缩。
在计算机中最小的容量单位是字节bytes,一个字节有8个bits位。每一位只可能是0或者1。 例如数字1在计算机中存储为00000001,1会在最右边占据1个bit,而剩下的7个bits都填充为0! 这样看来这七个bit其实是没有任何意义的,但是却浪费了7个bit的空间,所以利用相应的压缩算法将这些没有使用到的空间 丢出来,以让文件占用的空间变小!这就是压缩的技术啦!
另外一种压缩技术是将重复的数据进行统计记录的。举例来说,如果你的数据为111.... 共有100个1时, 那么压缩技术会记录为100个1,而不是真的有100个1的位存在!这样也能够精简文件记录的容量呢!
经过压缩后的文件是无法直接使用的,在使用之前,需要将文件数据还原回未压缩前的样子, 那就是解压缩的过程了! 压缩后与压缩前的文件所占用的磁盘空间大小称为压缩比! 由于目前的计算机指令周期相当的快速, 因此其实在网页浏览的时候,时间都是花在数据的传输上面,而不是 CPU 的运算啦! 为了提高数据传输效率,目前很多的WWW网站利用文件压缩的技术来进行数据的传送,在经过网络传输时,使用的是压缩过的数据, 等到这些压缩过的数据到达你的计算机主机时,再进行解压缩,这样由于压缩过的数据量降低了,自然传送的速度就会增快不少!网站带宽的可利用率上升喔!

Linux 系统常见的压缩指令

回到顶部
Linux文件的属性基本上是与文件名没有绝对关系的,虽然linux下的文件不通过文件扩展名区别文件的类型,但是由于linux下的压缩工具非常多, 且不同的压缩工具所用的压缩技术并不相同,彼此之间可能就无法互通压缩/解压缩文件。 所以,当你下载到某个压缩文件时,自然就需要知道该文件是由哪种压缩指令所制作出来的,好用来对照着解压缩啊! 所以需要通过不同的后缀扩展名来区分压缩文件。通过不同压缩工具压缩后的文件会有不同的后缀扩展名。
Linux下压缩文件常用的扩展名有如下几种:
*.tar, *.tar.gz, *.tgz, *.gz, *.Z, *.bz2, *.xz。
*.Z compress程序压缩的文件;
*.zip zip程序压缩的文件;
*.tar tar程序打包的文件,但是没有压缩;
*.gz gzip程序压缩的文件;
*.bz2 bzip2程序压缩的文件;
*.xz xz程序压缩的文件;
*.tar.gz 先通过tar程序打包,然后经过gzip压缩的文件;
*.tar.bz2 先通过tar程序打包,然后经过bzip2压缩的文件;
*.tar.xz 先通过tar程序打包,然后经过xz压缩的文件
目前Linux上常见的压缩指令就是gzip, bzip2以及最新的xz。compress已经被gzip取代了。
为了支持windows常见的zip,其实Linux也早就有zip指令了!zip命令用于将文件或者目录压缩为.zip格式 gzip是由GNU计划所开发出来的压缩指令,该指令已经取代了compress。
后来GNU又开发出bzip2及xz这几个压缩比更好的压缩指令!
这些指令通常仅能针对一个文件来压缩与解压缩,打包软件tar可以将很多文件打包成为一个文件!甚至是目录也可以这么玩。
不过,单纯的tar功能仅是打包而已,亦即是将很多文件集结成为一个文件, 事实上,他并没有提供压缩的功能, 后来,GNU计划中,将整个tar与压缩的功能结合在一起,如此一来提供使用者更方便并且更强大 的压缩与打包功能! 下面我们就来谈一谈这些在Linux下面基本的压缩指令吧!

initroot编辑整理,转载请注明www.initroot.com

100次点赞 100次阅读