天天看点

linux下文件打包和压缩

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

    首先要区分两个概念:打包和压缩。因为linux里的压缩程序一般只能压缩一个程序,因此我们要先把许多文件先打包成一个文件,然后再对这个文件进行压缩。最长用的打包程序为tar,而常用的压缩程序有gzip,bzip2,compress.

   先来看打包程序tar.

   tar命令最早为顺序访问的磁带机设备而设计的(Tape ARchive,磁带归档),用于保留和恢复磁带上的文件.

  用法:tar [ctxu][v][f device] file-list

  v就不用说了。f是制定的tar文件,这个一般必须出现,而且出现在选项最后。

  然后剩下的c,x,t是互斥的。c是创建tar文件。x是抽取tar文件。t是列出tar文件里面的文件列表。x和t还可加文件名,但一般不用。最后就有两种最常用用法:

  tar xvf name.tar 和  tar cvf name.tar file1,file1,dir1,dir2,.....

   然后再分别看看几个压缩程序。

   compress. 用法有三: compress file 得到file.z

                                           uncompress file.z 得到file

                                           zcat file.z 读取压缩格式的文件

    gzip/gunzip   gzip (-1 || -9) file 得到file.gz (-1 快,-9压缩率高)

                              gzip -d file.gz或者 gunzip file.gz 得到file

    bzip2/bunzip2  用法同gzip 

   linux里最常用的就是tar能调用compress,gzip,bzip2在打包后直接压缩。

   tar选项里加上j,z,Z分别表示调用bzip2,gzip,compress.作用与先后执行两个命令一样。

  注意,默认情况下压缩文件会覆盖原文件,但是打包文件不会。

  这样,我们就可以随便组合了,比如要生成tar.bz2的文件,命令为tar cjvf name.tar.bz2  file1,file2,file3,......

 要解压tar.gz的文件,tar xzvf name.tar.gz.

本文转自nxlhero 51CTO博客,原文链接:http://blog.51cto.com/nxlhero/343612,如需转载请自行联系原作者

继续阅读