6.1 压缩打包介绍

使用压缩工具的好处:

使用压缩文件,不仅可以节省磁盘空间,而且在传输时还能节省网络宽带。

我们通常讲的家用宽带和机房宽带100M是有区别的:

机房宽带的上行和下行都是100M,所以价格昂贵,家用宽带下行是100M,但是上行往往只有10M-20M

  • Linux下最常见的压缩文件是.tar.gz格式,还有.zip,.gz,.bz2,.xz,.tar.bz2,.tar.xz
  • 等。
  • .gz 表示由gzip压缩工具压缩的文件。
  • .bz2 表示由bzip2压缩工具压缩的文件。
  • .tar 表示由tar打包程序打包的文件(tar没有压缩功能,只是把一个目录合并成一个文件)
  • .tar.gz 先打包,在由gzip压缩
  • .tar.bz2 先打包,在由bzip2压缩
  • .tar.xz 先打包,在由xz压缩

6.2 gzip压缩工具

格式:gzip [参数] filename

          gzip -d是解压缩。

  • gzip -# filename     //#范围1-9,默认6
  • gzip 不能压缩目录
  • gzip filename 压缩文件,暂不支持压缩目录,压缩后源文件消失
  • gzip -d filename.gz 解压文件,解压后,源压缩文件消失
  • gunzip filename.gz 解压文件, 解压后,源压缩文件消失
  • gzip –c filename > /tmp/filename.gz指定压缩文件路径,并且源文件存在
  • gzip –d –c /tmp/filename.gz > /目录/filename 解压文件到那个路径下,并且源压缩文件存在。
  • gunzip –c /tmp/filename.gz > /目录/filename 解压文件到那个路径下,并且源压缩文件存在。
  • zcat 1.txt.gz 查看.gz文件
  • file /tmp/1.txt.gz 查看文件的属性

例子:查找/etc/下后缀为.conf的文件,并将它的内容追加到文件1.txt中,并且压缩它,然后再解压。

2018.8.9 第七次课及预习

  • 压缩文件1.txt,并且将压缩文件放到/tmp/下

2018.8.9 第七次课及预习

  • 解压文件1.txt.gz ,存放到当前目录下,命名为2.txt

2018.8.9 第七次课及预习

  • 查看压缩文件1.txt.gz的内容,因为内容比较多,这里就不粘贴出来了。

2018.8.9 第七次课及预习

  • file /tmp/1.txt.gz 查看属性,

2018.8.9 第七次课及预习

6.3 bzip2压缩工具

bzip命令的格式:bzip2 [-dz] filename ,压缩文件时加不加-z都一样,-d 解压缩。

bzip比gzip压缩更小,所耗费的CPU资源也最大(压缩的文件也是最小的)

  • bzip2 1.txt / bzip2 -z 1.txt //压缩文件
  • bzip2 -d 1.txt.bz2 / bunzip2 1.txt.bz2 //解压文件
  • bzip -# 1.txt //#范围1-9,默认9
  • 不能压缩目录
  • bzcat 1.txt.bz2 //查看压缩文件
  • bzip2 -c 1.txt > /root/1.txt.bz2 //指定压缩文件路径,并且源文件存在
  • bzip2 -c -d /root/1.txt.bz2 > /tmp/1.txt.new2 //解压文件到指定路径下,并且源压缩文件存在
  • File 1.txt.bz2 查看文件属性

第一次使用bzip2命令时提示没有这个命令,我们用yum安装一下

2018.8.9 第七次课及预习

  • 压缩文件1.txt

2018.8.9 第七次课及预习

  • 解压文件1.txt.gz

2018.8.9 第七次课及预习

  • 压缩文件1.txt,并且指定路径,源文件存在

2018.8.9 第七次课及预习

  • 解压文件1.txt.bz2,并且指定路径重名命为3.txt,源文件存在。

2018.8.9 第七次课及预习

  • 查看压缩文件1.txt.bz2 内容

2018.8.9 第七次课及预习

  • 查看文件1.txt.bz2的属性。

2018.8.9 第七次课及预习

6.4 xz压缩工具

xz命令格式:xz[-zd] filename 压缩文件加不加-z都可以,-d解压缩。

xz压缩文件比bzip2更小,所耗费的CPU资源也最大(压缩的文件也是最小的)

  • xz 1.txt / xz -z 1.txt //压缩文件
  • xz -d 1.txt.xz / unxz 1.txt.xz //解压缩文件
  • xz -# 1.txt //#范围1-9,默认9
  • 不能压缩目录
  • xzcat 1.txt.xz //查看压缩文件内容
  • xz -c 1.txt > /root/1.txt.xz //指定压缩文件路径,并且源文件存在
  • xz -d -c /root/1.txt.xz > 1.txt.new3 //解压文件到指定路径下,并且源压缩文件存在
  • file 1.txt.xz查看文件属性
  • 压缩文件1.txt

2018.8.9 第七次课及预习

  • 解压文件1.txt.xz

2018.8.9 第七次课及预习

  • 压缩文件1.txt,并且指定路径,源文件存在

2018.8.9 第七次课及预习

  • 解压文件1.txt.bz2,并且指定路径重名命为4.txt,源文件存在。

2018.8.9 第七次课及预习

  • file 1.txz.xz

2018.8.9 第七次课及预习

  • 1.txt.xz<1.txt.bz2<1.txt.gz 说明xz压缩更严谨,但是所耗费cpu资源最大。

2018.8.9 第七次课及预习

6.5 zip压缩工具

  • zip 1.txt.zip 1.txt    //压缩文件
  • zip -r 123.zip 123/   //压缩目录
  • unzip 1.txt.zip //解压
  • unzip 123.zip -d /root/456/ //解压文件,并指定解压到那个目录下
  • 不能查看压缩文件的内容,只能查看内容列表
  • unzip -l 123.zip //查看压缩文件的内容列表
  • zip压缩文件后,源文件不消失
  1. 需要安装zip包

2018.8.9 第七次课及预习

  1. 使用zip工具压缩文件1.txt文件。

2018.8.9 第七次课及预习

  1. 使用zip工具压缩目录test

2018.8.9 第七次课及预习

  1. 解压压缩文件

2018.8.9 第七次课及预习

2018.8.9 第七次课及预习

2018.8.9 第七次课及预习

  1. 指定解压文件路径

2018.8.9 第七次课及预习

  1. 查看压缩文件内容列表

2018.8.9 第七次课及预习

6.6 tar打包

  1. tar本身是一个打包工具,可以把目录打包成一个文件,它把所有的文件整合成一个大文件,方便复制或者移动。
  2. 命令格式:tar [-zjxcvfpP] filename.tar
  3. tar打包或解包均会直接覆盖原文件和目录,不会提示覆盖信息

tar参数

  • -z表示同时使用gzip压缩
  • -j表示同时用bzip压缩
  • -J表示同时用xz压缩
  • -c表示建立一个tar包或者压缩文件包
  • -x表示解包或者解压
  • -v表示可视化
  • -f后面跟文件名(-f filename,表示压缩后的文件名为filename)注意:如果多个参数组合的情况下,-f要写在最后面。
  • -t表示查看tar包里的文件
  • --exclude filename 表示在打包或压缩时,不要将某个文件不包含在里面。
  • 打包或者解包,源文件都存在。
  • 打包后产生的文件与打包前的文件在同一目录下。

tar使用方法:

  1. tar -cvf 123.tar 123 // 打包目录123
  2. tar -cvf aming.tar 1.txt 123 //打包目录123和文件1.txt
  3. tar -xvf aming.tar //解包
  4. tar -tf aming.tar //查看打包文件
  5. tar -cvf aming.tar --exclude 1.txt --exclude 2 123 //打包目录123,单不包括文件1.txt和2
  1. 打包目录test和文件1.txt,2.txt

2018.8.9 第七次课及预习

  1. 查看打包文件test.tar的内容

2018.8.9 第七次课及预习

  1. 解包文件test.tar

2018.8.9 第七次课及预习

  1. 打包目录test和文件1.txt 2.txt ,但是不包含文件3.txt

2018.8.9 第七次课及预习

  1. 打包目录test和文件1.txt 2.txt ,但是不包含文件3.txt和4.txt

2018.8.9 第七次课及预习

6.7 打包并压缩

 

  • tar 命令还可以在打包的同时支持gzip压缩,bzip压缩和xz压缩

打包并压缩的使用方法:

  • tar -zcvf 123.tar.gz 123
  • tar -zxvf 123.tar.gz
  • tar -jcvf 123.bz2 123
  • tar -jxvf 123.bz2
  • tar -Jcvf 123.xz 123
  • tar -Jxvf 123.xz
  • tar -tf 123.bz2 / tar -tf 123.gz / tar -tf 123.xz
  1. 打包目录test以及文件1.txt和2.txt并使用gzip压缩

2018.8.9 第七次课及预习

  1. 查看打包文件

2018.8.9 第七次课及预习

2018.8.9 第七次课及预习

2018.8.9 第七次课及预习

  1. 打包文件并使用bzip2压缩

2018.8.9 第七次课及预习

2018.8.9 第七次课及预习

2018.8.9 第七次课及预习

  1. 打包文件并使用xz压缩

2018.8.9 第七次课及预习

2018.8.9 第七次课及预习

2018.8.9 第七次课及预习

  1. 查看打包文件

2018.8.9 第七次课及预习

2018.8.9 第七次课及预习

注意:打包后文件越小,耗时越长,占用cpu资源越多。

 

扩展补充帖子: http://ask.apelearn.com/question/5435

相关文章: