深入理解tar包的压缩与解压

您所在的位置:网站首页 jar文件解压之后后缀名没了 深入理解tar包的压缩与解压

深入理解tar包的压缩与解压

2023-07-25 13:48| 来源: 网络整理| 查看: 265

对于tar包、压缩包等相关概念的深入解释

tar 命令用来打包gzip、bzip命令用来压缩、解压缩

起初tar命令并不具备压缩功能,其仅仅是个打包工具,因为有的时候目录文件是不可以在某些地方进行传输的,所以需要打包成一个包文件,还有一个原因就是,目录文件是不可以直接进行压缩的,所以需要先打包一下 后来因为传输需要进行压缩,这样一来能快速传输,二来可以节省空间,所以可以使用压缩工具对包进行压缩,产生以.gz和.bz2结尾的压缩文件 至此相当于经历了打包和压缩两个步骤,但是实际应用中,总是分两步来做就显得有些麻烦,于是tar命令有了参数可以使用,这些参数有:

参数作用-c(小写)创建压缩文件-x解开压缩文件-t查看压缩包内有哪些文件-z用Gzip格式压缩或者解压-j(小写)用bzip2格式压缩或者解压-J(大写)用xz格式进行压缩或者解压-v显示压缩或者解压的过程-f目标文件名-p(小写)保留原始的权限与属性-P(大写)使用绝对路径来压缩-C(大写)指定解压到的目录

其中需要额外解释的是,-v参数一般情况下最好加一下,因为有时候,执行压缩或者解压缩操作时,可能需要花费比较长的时间,如果屏幕一直没有输出,一方面不好判断进度情况,另一方面也会怀疑电脑是不是死机了。 -f参数也很重要,必须放在参数的最后一位,代表要压缩或者解压到哪个指定的目录

下面前后对比一下tar命令有了参数前后的变化 1、首先是没有用tar的压缩参数:

tar命令 gzip命令 bzip2命令 xx xx.tar xx.tar xx.tar.gz xx.tar xx.tar.bz2

根据上述流程,可以看到主要分成了两步,第一步是tar命令打包成包文件,第二部是进行压缩(有.gz和.bz2两种格式可以选择) 2、因为tar命令有参数,加了参数后就可以直接打包压缩:

tar加-z参数 tar加-j参数 xx.tar xx.tar.gz xx.tar xx.tar.bz2

显而易见,第二种方式比较方便,可以将打包与压缩合并一起进行,只需要在使用tar命令时选择适当参数即可

一般地可以这样使用

[root@localhost ~]# tar -czvf etc.tar.gz /etc/ #将/etc/下的文件以Gzip格式压缩,压缩过程进行显示,压缩后名字为etc.tar.gz #此命令压缩之后的etc.tar.gz文件被保存在当前目录下 [root@localhost ~]# tar -cjvf etc.tar.bz2 /etc/ #将/etc/下的文件以bzip2格式压缩,压缩过程进行显示,压缩后名字文etc.tar.bz2 #压缩后的etc.tar.bz2文件被保存在当前目录下 [root@localhost ~]# tar -xzvf etc.tar.gz -C /root/etc #将etc.tar.gz文件以Gzip格式解压,解压过程进行显示,解压到/root/etc下 [root@localhost ~]# tar -xjvf etc.tar.bz2 -C /root/etc #将etc.tar.bz2文件以bzip2格式解压,解压过程进行显示,解压到/root/etc下

总结: tar打包和(Gzip、bz2)压缩实际上根本没有半毛钱关系,只是tar命令顺带帮你提供了压缩、解压的参数而已

需要注意的是: 假如有一个文件名为xxx.gz,根据后缀可以判断出来,其并不是由tar包进行压缩得来的包压缩文件,而是直接由一个不是文件夹(目录)的文件直接压缩得到的普通压缩文件,所以这个时候对其进行解压,不应使用tar -xzvf,而是使用gunzip解压 xxx.bz2的文件也是同样的道理,对其进行解压不应使用tar -xjvf,而是使用bunzip2进行解压

另外需要注意的还有: 单纯就压缩与解压而言,除了Gzip–>.gz、bz2–>.bz2的方式进行压缩之外,还有zip–>.zip的压缩方式,同时这种压缩格式也经常出现在windows平台上

其他的压缩与解压方式、格式还有很多,不一一列举,仅举以上常用的格式,相信这个对于tar包和压缩的深入理解,会利于快速掌握对应的命令,否则死记硬背很容易忘记

–>有助于理解压缩包解压工具,建议收藏



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3