文件压缩与打包

1 常用的压缩文件及命令

* .Z        %compress程序压缩的文件
*.gz        %gzip程序压缩的文件
*.bz2       %bzip2程序压缩的文件
*.tar       %tar程序打包的数据,并没有压缩过
*.tar.gz    %tar程序打包的文件,其中经过gzip的压缩
*.tar.bz2   %tar程序打包的文件,其中经过bzip2的压缩

最常见的是压缩命令是gzip 和bzip2,compress已经不流行了,而且gzip可以解开.Z、.zip等文件,所以可以不学太多。

1.1 gzip ,zcat

gzip进行压缩, 使用gzip -d解压,不要使用gunzip这个命令解压,gzip -d会将原来的.gz删除,产生原本的文件。
cat读取纯文本文件,zcat读取纯文本被压缩后的压缩文件。gzip的命令参数如下:

[xiaxia@PC]  gzip [-cdtv#]  文件名
[xiaxia@PC]  zcat 文件名.gz
参数:
-c     %将压缩的数据输出到屏幕上,可通过数据流重定向来处理
-d     %解压缩
-t     %可以用来检验一个压缩文件的一致性,看看文件有无错误
-v     %可以显示源文件/压缩文件的压缩比等信息
-'#'   %压缩等级,1~9, 1最快,但是压缩比最差,9 最慢,默认压缩等级是-6

1.2 bzip2, bzcat

bzip2可以提供更好的压缩比,用法几乎与gzip相同.也可以用bunzip2来替代bzip2 -d
bzcat可以读取bzip2压缩文件

[xiaxia@PC] #bzip2[-cdkzv#]  文件名
[xiaxia@PC] # bzcat 文件名.bz2
参数:
-c     %将压缩的数据输出到屏幕上,可通过数据流重定向来处理
-d     %解压缩
-k     %保留源文件,而不会删除原始文件
-z     %压缩的参数
-v      %可以显示源文件/压缩文件的压缩比等信息
-#     %压缩等级,1~9, 1最快,但是压缩比最差,9 最慢,默认压缩等级是-6

2 打包 tar

tar可以将多个目录或文件打包成一个大文件,还可以通过gzip/bzip2的支持,将文件同时进行压缩。

[root@www ~]# tar [-j|-z] [cv] [-f 创建的档名] filename... <==打包与压缩
[root@www ~]# tar [-j|-z] [tv] [-f 创建的档名]             <==察看档名
[root@www ~]# tar [-j|-z] [xv] [-f 创建的档名] [-C 目录]   <==解压缩选项与参数:
-c  :创建打包文件,可搭配 -v 来察看过程中被打包的档名(filename)
-t  :察看打包文件的内容含有哪些档名,重点在察看『档名』就是了;
-x  :解打包或解压缩的功能,可以搭配 -C (大写) 在特定目录解开
      特别留意的是, -c, -t, -x 不可同时出现在一串命令列中。
-j  :透过 bzip2 的支持进行压缩/解压缩:此时档名最好为 *.tar.bz2
-z  :透过 gzip  的支持进行压缩/解压缩:此时档名最好为 *.tar.gz
-v  :在压缩/解压缩的过程中,将正在处理的档名显示出来!
-f filename:-f 后面要立刻接要被处理的档名!建议 -f 单独写一个选项罗!
-C 目录    :这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。

其他后续练习会使用到的选项介绍:
-p  :保留备份数据的原本权限与属性,常用於备份(-c)重要的配置档
-P  :保留绝对路径,亦即允许备份数据中含有根目录存在之意;
--exclude=FILE:在压缩的过程中,不要将 FILE 打包! 

最简单的使用 tar 就只要记忆底下的方式即可:

  • 压 缩:tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称
  • 查 询:tar -jtv -f filename.tar.bz2
  • 解压缩:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录
    建议将参数-f filename与其他参数单独分开,会比较不容易出现问题。

我只是一个搬运工,如果需要参考例子可以点下面的参考资料看详细的信息。

资料来源:

《鸟哥的Linux私房菜》第九章

你可能感兴趣的:(文件压缩与打包)