选择显示字体大小

linux下的压缩文件剖析


对于刚刚接触linux的人来说,一定会给linux下一大堆各式各样的文件名给搞晕。别个不说,单单就压缩文件为例,我们知道在windows下最常见的压缩文件就只有两种,一是,zip,另一个是.rap。可是linux就不同了,它有.gz、.tar.gz、tgz、bz2、.z、.tar等众多的压缩文件名,此外windows下的.zip和.rar也可以在linux下使用,不过在linux使用.zip和.rar的人就太少了。本文就来对这些常见的压缩文件进行一番小结,希望你下次遇到这些文件时不至于被搞晕:)

   在具体总结各类压缩文件之前呢,首先要 弄清两个概念:打包和压缩。打包是指将一大堆文件或目录什么的变成一个总的文件,压缩则是将一个大的文件通过一些压缩算法变成一个小文件。为什么要区分这两个概念呢?其实这源于linux中的很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你就得先借助另它的工具将这一大堆文件先打成一个包,然后再就原来的压缩程序进行压缩。

   linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩了,所以首先就来讲讲tar命令的基本用法:

   tar命令的选项有很多(用man tar可以查看到),但常用的就那么几个选项,下面来举例说明一下:

   # 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包中所有文件,-t是解开的意思

   以上就是tar的最基本的用法。为了方便用户在打包解包的同时可以压缩或解压文件,tar提供了一种特殊的功能。这就是tar可以在打包或解包的同时调用其它的压缩程序,比如调用gzip、bzip2等。

   1) tar调用gzip

   gzip是gnu组织开发的一个压缩程序,.gz结尾的文件就是gzip压缩的结果。与gzip相对的解压程序是gunzip。tar中使用-z这个参数来调用gzip。下面来举例说明一下:

   # tar -czf all.tar.gz *.jpg
   这条命令是将所有.jpg的文件打成一个tar包,并且将其用gzip压缩,生成一个gzip压缩过的包,包名为all.tar.gz

   # tar -xzf all.tar.gz
   这条命令是将上面产生的包解开。

   2) tar调用bzip2

   bzip2是一个压缩能力更强的压缩程序,.bz2结尾的文件就是bzip2压缩的结果。与bzip2相对的解压程序是bunzip2。tar中使用-j这个参数来调用gzip。下面来举例说明一下:

   # tar -cjf all.tar.bz2 *.jpg
   这条命令是将所有.jpg的文件打成一个tar包,并且将其用bzip2压缩,生成一个bzip2压缩过的包,包名为all.tar.bz2

   # tar -xjf all.tar.bz2
   这条命令是将上面产生的包解开。
3)tar调用compress

   compress也是一个压缩程序,但是好象使用compress的人不如gzip和bzip2的人多。.z结尾的文件就是bzip2压缩的结果。与compress相对的解压程序是uncompress。tar中使用-z这个参数来调用gzip。下面来举例说明一下:

   # tar -czf all.tar.z *.jpg
   这条命令是将所有.jpg的文件打成一个tar包,并且将其用compress压缩,生成一个uncompress压缩过的包,包名为all.tar.z

   # tar -xzf all.tar.z
   这条命令是将上面产生的包解开

   有了上面的知识,你应该可以解开多种压缩文件了,下面对于tar系列的压缩文件作一个小结:

   1)对于.tar结尾的文件

   tar -xf all.tar

   2)对于.gz结尾的文件

   gzip -d all.gz
   gunzip all.gz

   3)对于.tgz或.tar.gz结尾的文件

   tar -xzf all.tar.gz
   tar -xzf all.tgz

   4)对于.bz2结尾的文件

   bzip2 -d all.bz2
   bunzip2 all.bz2

   5)对于tar.bz2结尾的文件

   tar -xjf all.tar.bz2

   6)对于.z结尾的文件

   uncompress all.z

   7)对于.tar.z结尾的文件

   tar -xzf all.tar.z

   另外对于window下的常见压缩文件.zip和.rar,linux也有相应的方法来解压它们:

   1)对于.zip

   linux下提供了zip和unzip程序,zip是压缩程序,unzip是解压程序。它们的参数选项很多,这里只做简单介绍,依旧举例说明一下其用法:

   # zip all.zip *.jpg
   这条命令是将所有.jpg的文件压缩成一个zip包

# unzip all.zip
   这条命令是将all.zip中的所有文件解压出来

   2)对于.rar

   要在linux下处理.rar文件,需要安装rar for linux,可以从网上下载,但要记住,rar for linux
不是免费的;可从http://www.rarsoft.com/download.htm下载rar for linux 3.2.0,然后安装:

   # tar -xzpvf rarlinux-3.2.0.tar.gz
   # cd rar
   # make

   这样就安装好了,安装后就有了rar和unrar这两个程序,rar是压缩程序,unrar是解压程序。它们的参数选项很多,这里只做简单介绍,依旧举例说明一下其用法:

   # rar a all *.jpg
   这条命令是将所有.jpg的文件压缩成一个rar包,名为all.rar,该程序会将.rar 扩展名将自动附加到包名后。

   # unrar e all.rar
   这条命令是将all.rar中的所有文件解压出来

   到此为至,我们已经介绍过linux下的tar、gzip、gunzip、bzip2、bunzip2、compress、uncompress、zip、unzip、rar、unrar等程式,你应该已经能够使用它们对.tar、.gz、.tar.gz、.tgz、.bz2、.tar.bz2、.z、.tar.z、.zip、.rar这10种压缩文件进行解压了,以后应该不需要为下载了一个软件而不知道如何在linux下解开而烦恼了。而且以上方法对于unix也基本有效。

   本文介绍了linux下的压缩程式tar、gzip、gunzip、bzip2、bunzip2、compress、uncompress、zip、unzip、rar、unrar等程式,以及如何使用它们对.tar、.gz、.tar.gz、.tgz、.bz2、.tar.bz2、.z、.tar.z、.zip、.rar这10种压缩文件进行操作。

  


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons