zip压缩工具:

1、安装zip命令工具 yum install -y zip

2、zip压缩工具既可以压缩文件也可以压缩目录,而且压缩的时候不会源文件删除,示例如下:

[root@aminglinux-01 d6z]# ls                 //查看目录下的文件1.txt.bz2  2.txt  3.txt  4.txt  aminglinux[root@aminglinux-01 d6z]# zip 2.txt.zip 2.txt         //使用zip压缩2.txtadding: 2.txt (deflated 74%)[root@aminglinux-01 d6z]# ls                              //查看压缩完成1.txt.bz2  2.txt  2.txt.zip  3.txt  4.txt  aminglinux[root@aminglinux-01 d6z]# du -sh 2.txt.zip                //查看压缩大小332K	2.txt.zip[root@aminglinux-01 d6z]# ls1.txt.bz2  2.txt  2.txt.zip  3.txt  4.txt  aminglinux[root@aminglinux-01 d6z]# zip -r aming.zip 3.txt aminglinux      //zip -r同时压缩文本及目录adding: 3.txt (deflated 74%)adding: aminglinux/ (stored 0%)adding: aminglinux/1.txt (stored 0%)adding: aminglinux/2/ (stored 0%)adding: aminglinux/2/4.txt (deflated 74%)[root@aminglinux-01 d6z]# ls1.txt.bz2  2.txt  2.txt.zip  3.txt  4.txt  aminglinux  aming.zip[root@aminglinux-01 d6z]# du -sh aming.zip664K	aming.zip[root@aminglinux-01 d6z]# unzip-bash: unzip: 未找到命令[root@aminglinux-01 d6z]# yum install -y unzip              //安装解压缩命令unzip[root@aminglinux-01 d6z]# unzip aming.zip                 //解压缩Archive:  aming.zipreplace 3.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: n                  //因为压缩的时候并没有把源文件删除掉,在解压缩的时候就会访问你是否需要覆盖.replace aminglinux/1.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: yextracting: aminglinux/1.txtreplace aminglinux/2/4.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: aerror:  invalid response [a]replace aminglinux/2/4.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: A    //大A是解压全部inflating: aminglinux/2/4.txt

举例:使用unzip压缩到指定目录下

[root@aminglinux-01 d6z]# ls1.txt.bz2  2.txt  2.txt.zip  3.txt  4.txt  aminglinux  aming.zip[root@aminglinux-01 d6z]# mkdir test                    //创建一个新的目录[root@aminglinux-01 d6z]# unzip 2.txt.zip -d test/                     //压缩到test目录下Archive:  2.txt.zipinflating: test/2.txt[root@aminglinux-01 d6z]# unzip 2.txt.zip -d test/aa.txt        //指定压缩文件名报错Archive:  2.txt.zip inflating: test/aa.txt/2.txt          //说明,压缩前的文件名是什么就是什么,不能更改.

下列中,zip的压缩包无法直接查看内容,只能查看压缩包的文件列表.示例如下:

[root@aminglinux-01 d6z]# unzip -l aming.zipArchive:  aming.zipLength      Date    Time    Name---------  ---------- -----   ----1286145  11-08-2017 19:51   3.txt0  11-08-2017 20:51   aminglinux/0  11-08-2017 20:46   aminglinux/1.txt0  11-08-2017 20:51   aminglinux/2/1286145  11-08-2017 20:51   aminglinux/2/4.txt---------                     -------2572290                     5 files

tar打包工具:

命令用法:

1、tar -cvf aminglinux.tar aminglinux/                   //创建打包文件

2、 tar -cvf aminglinux.tar aminglinux 3.txt 4.txt    //创建打包目录加文件

3、tar -xvf aminglinux.tar                                      //解包

4、tar -tf aminglinux.tar                                        //查看一个压缩包的目录列表

5、tar -cvf aminglinux.tar --exclude 2 aminglinux 3.txt 4.txt     //过滤指定的目录或文件,支持通配

实验操作如下:

[root@aminglinux-01 d6z]# ls1.txt.bz2  2.txt  2.txt.zip  3.txt  4.txt  aminglinux  aming.zip  test[root@aminglinux-01 d6z]# tar -cvf aminglinux.tar aminglinux/     //使用tar -cvf这个命令打包aminglinux/aminglinux/2/aminglinux/2/4.txtaminglinux/1.txt[root@aminglinux-01 d6z]# tar -cf aminglinux.tar aminglinux/     //不加v就显示打包过程,重新打包同一个文件,直接覆盖之前打包的文件,不提示。[root@aminglinux-01 d6z]# ls1.txt.bz2  2.txt  2.txt.zip  3.txt  4.txt  aminglinux  aminglinux.tar  aming.zip  test[root@aminglinux-01 d6z]# tar -xvf aminglinux.tar            //解包,也是覆盖之前的文件,不提示。aminglinux/aminglinux/2/aminglinux/2/4.txtaminglinux/1.txt[root@aminglinux-01 d6z]# tar -cvf aminglinux.tar aminglinux 3.txt 4.txt  //一起打包目录加文件aminglinux/aminglinux/2/aminglinux/2/4.txtaminglinux/1.txt3.txt4.txt[root@aminglinux-01 d6z]# tar -tf aminglinux.tar  //查看文件列表aminglinux/aminglinux/2/aminglinux/2/4.txtaminglinux/1.txt3.txt4.txt[root@aminglinux-01 d6z]# tar -cvf aminglinux.tar --exclude 2 aminglinux 3.txt 4.txtaminglinux/aminglinux/1.txt3.txt4.txt[root@aminglinux-01 d6z]# tar -cvf aminglinux.tar --exclude 2 --exclude 1.txt aminglinux 3.txt 4.txtaminglinux/3.txt4.txt

tar打包并压缩:

  1. tar -czvf aminglinux.tar.gz aminglinux 3.txt 4.txt     //gz打包并压缩

  2. tar -xzvf aminglinux.tar.gz aminglinux 3.txt 4.txt     //gz解包并解压缩

  3. tar -cjvf aminglinux.tar.bz2 aminglinux 3.txt 4.txt    //bz2打包并压缩

  4. tar -xjvf aminglinux.tar.bz2 aminglinux 3.txt 4.txt    //bz2解包并解压缩

  5. tar -cJvf aminglinux.tar.xz aminglinux 3.txt 4.txt     //xz2打包并压缩

  6. tar -xJvf aminglinux.tar.xz aminglinux 3.txt 4.tx      //xz2解包并解压缩

  7. tar -tf aminglinux.tar.gz                    //gz查看一个压缩包的文件列表

  8. tar -tf aminglinux.tar.xz                  //xz查看一个压缩包的文件列表

  9. tar -tf aminglinux.tar.bz2                 //bz2查看一个压缩包的文件列表

实验操作如下:

[root@aminglinux-01 d6z]# tar -czvf aminglinux.tar.gz aminglinux 3.txt 4.txtaminglinux/aminglinux/2/aminglinux/2/4.txtaminglinux/1.txt3.txt4.txt[root@aminglinux-01 d6z]# du -sh aminglinux.tar.gz992K	aminglinux.tar.gz[root@aminglinux-01 d6z]# tar -cjvf aminglinux.tar.bz2 aminglinux 3.txt 4.txtaminglinux/aminglinux/2/aminglinux/2/4.txtaminglinux/1.txt3.txt4.txt[root@aminglinux-01 d6z]# du -sh aminglinux.tar.bz2392K	aminglinux.tar.bz2[root@aminglinux-01 d6z]# tar -cJvf aminglinux.tar.xz aminglinux 3.txt 4.txtaminglinux/aminglinux/2/aminglinux/2/4.txtaminglinux/1.txt3.txt4.txt[root@aminglinux-01 d6z]# du -sh aminglinux.tar.xz60K	aminglinux.tar.xz[root@aminglinux-01 d6z]# ls1.txt.bz2  2.txt.zip  4.txt       aminglinux.tar      aminglinux.tar.gz  aming.zip2.txt      3.txt      aminglinux  aminglinux.tar.bz2  aminglinux.tar.xz  test[root@aminglinux-01 d6z]# tar -tf aminglinux.tar.gzaminglinux/aminglinux/2/aminglinux/2/4.txtaminglinux/1.txt3.txt4.txt[root@aminglinux-01 d6z]# tar -tf aminglinux.tar.xzaminglinux/aminglinux/2/aminglinux/2/4.txtaminglinux/1.txt3.txt4.txt[root@aminglinux-01 d6z]# tar -tf aminglinux.tar.bz2aminglinux/aminglinux/2/aminglinux/2/4.txtaminglinux/1.txt3.txt4.txt

知识点:zip有一个特点,压缩文件后,原来文件不删除,而gzip、bzip2、xz这三种压缩后是删除原先文件的。