首页 > 系统管理 > 基础知识 > linux文件的压缩与打包
2015
02-20

linux文件的压缩与打包

前言

   在我们的Windows系统中我们压缩打包文件的时候需要用到压缩软件,在linux下也是同样会有许多的的压缩软件,常用的就是Tar命令,Tar不仅仅可以打包文件还可以使用gizpbzip2的压缩方式,那我们今天就详细介绍一下Tar这个命令。

借用这个Tar的命令我们说一下学习方法,当你看你一个陌生的命令时候,我们该怎么样去学习呢,一般都是这样去熟悉的,我们可以使用help帮助查看有哪些参数,或者是man查看这个命令的使用方法,如果你对英文不是很感冒,那我们就使用最简单的方式,别忘记了还有百度。

一、Tar命令选项

#这样去查看帮助信息

[root@tshare365 ~]# man tar
[root@tshare365 ~]# tar --help

通过查看帮助信息 我们看到有可以看到有许多参数,下面我详细介绍一下常用的参数

选项与参数:
 -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常用命令演示

2.1、创建实验环境

  [root@tshare365 ~]# mkdir -pv test/{1,2,3,4}
 [root@tshare365 ~]# cd test/
 [root@tshare365 test]# ls
 1  2  3  4
 [root@tshare365 test]#

 我们在test目录下创建了1-4这个4个目录

2.2、使用gzip压缩备份test目录

[root@tshare365 ~]# tar cvf test.tar.gz  test/
 test/
 test/4/
 test/2/
 test/1/
 test/3/
 [root@tshare365 ~]#

 2.3、查看备份之后包含的文件

[root@tshare365 ~]# tar tvf test.tar.gz  
 drwxr-xr-x root/root         0 2015-02-20 09:47:39 test/
 drwxr-xr-x root/root         0 2015-02-20 09:47:39 test/4/
 drwxr-xr-x root/root         0 2015-02-20 09:47:39 test/2/
 drwxr-xr-x root/root         0 2015-02-20 09:47:39 test/1/
 drwxr-xr-x root/root         0 2015-02-20 09:47:39 test/3/
 [root@tshare365 ~]#

 我们在不解压文件的时候也可以看到软件包中所包含的文件有哪些

2.4、解压缩文件

[root@tshare365 ~]# tar xf  test.tar.gz  -C /tmp/
 [root@tshare365 ~]# ll /tmp/test/
 total 16
 drwxr-xr-x 2 root root 4096 Feb 20 09:47 1
 drwxr-xr-x 2 root root 4096 Feb 20 09:47 2
 drwxr-xr-x 2 root root 4096 Feb 20 09:47 3
 drwxr-xr-x 2 root root 4096 Feb 20 09:47 4
 [root@tshare365 ~]#

在解压的时候我们使用了 -C这个选项,表示我们指定了文件解压的目录

以上几步,希望大家必须掌握,这都是必会的知识点

 

三、Tar进阶练习

3.1、只解压单个文件

#查看压缩包文件
 [root@tshare365 ~]# tar -tvf  test.tar.gz  
 drwxr-xr-x root/root         0 2015-02-20 09:47:39 test/
 drwxr-xr-x root/root         0 2015-02-20 09:47:39 test/4/
 drwxr-xr-x root/root         0 2015-02-20 09:47:39 test/2/
 drwxr-xr-x root/root         0 2015-02-20 09:47:39 test/1/
 drwxr-xr-x root/root         0 2015-02-20 09:47:39 test/3/
 #我们只是解压test/1/这个文件,而不是所有文件
 [root@tshare365 tmp]# tar xv -f test.tar.gz  test/1/
 test/1/
 [root@tshare365 tmp]# ls
 test  test.tar.gz
 [root@tshare365 tmp]# ll test
 total 4
 drwxr-xr-x 2 root root 4096 Feb 20 09:47 1

看到在我们的test文件中就只有一个文件哦!

3.2、打包压缩某个目录,但是不包含目录下的某个文件

[root@tshare365 ~]# tar czvf  test.tar.gz --exclude=test/1 --exclude=test/2  test/
 test/
 test/4/
 test/3/
 [root@tshar

#使用–exclude选项排除我们的文件

对于Tar常用的命令就是这么多,我们就到此结束了,如果有什么问题,请留言!

 




最后编辑:
作者:tshare365
这个作者貌似有点懒,什么都没有留下。
捐 赠您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请狠狠点击

留下一个回复