Linux中主要有.zip,.gz,.bz2及.tar.gz和.tar.bz2等压缩格式
一、.zip,.gz,.bz2格式
.zip格式语法:
zip 压缩文件名 源文件 #压缩文件 (也能压缩目录,但只会压缩第一个目录,目录中的内容并没有压缩进去)
zip -r 压缩文件名 源目录 #压缩目录
unzip 压缩文件名 #解压文件
将11.txt文件压缩为:11.zip文件:zip 11.zip 11.txt
![](https://img-blog.csdnimg.cn/img_convert/80fa6af5749e7722b95aa1b7508654c8.png)
将coding目录压缩为:coding.zip文件:zip -r coding.zip coding (由下图可知会压缩目录中的所有内容)
![](https://img-blog.csdnimg.cn/img_convert/833f111d13d9494d20798316ddb24a86.png)
将coding目录压缩为:coding.zip文件:zip coding.zip coding (仅仅只是压缩了coding/,里面不含coding文件夹中原先的内容)
![](https://img-blog.csdnimg.cn/img_convert/a526a2250b0ee74071a869ca1ac12a0a.png)
解压coding.zip文件(上图得到的coding.zip文件),可见原来的first.c等文件全部不见了
![](https://img-blog.csdnimg.cn/img_convert/3e6d3e444ae6bf280da04e78a909d330.png)
.gz格式语法:
gzip 源文件 #压缩为.gz格式的压缩文件,源文件会消失
gzip -c 源文件 > 压缩文件 #压缩为.gz格式,源文件保留例如:gzip-c cangls>cangls.gz
gzip -r 目录 #压缩目录下所有的子文件,但是不能压缩目录
gunzip 压缩文件名 #解压压缩文件
![](https://img-blog.csdnimg.cn/img_convert/8363a2d85af5eb88eb7f861ae23e9fd0.png)
![](https://img-blog.csdnimg.cn/img_convert/d0dfd247112c0afa154742289d902e4b.png)
![](https://img-blog.csdnimg.cn/img_convert/f276e3a9a8f68f9df08b4b8a9e3c7fca.png)
![](https://img-blog.csdnimg.cn/img_convert/1624de03f88c24a6f7f004f102a7de17.png)
.bz2格式语法
bzip2源文件 #压缩为.bz2格式,不保留源文件
bzip2 -k源文件 #压缩之后保留源文件
注意:bzip2命令不能压缩目录
bzip2 -d压缩文件 #解压缩,-k保留压缩文件
bunzip2压缩文件 #解压缩,-k保留压缩文件
![](https://img-blog.csdnimg.cn/img_convert/bd5a87cd5c24b957b5d36ca1304ce290.png)
二、.tar.gz,.tar.bz2格式
针对.gz及.bz2格式不能压缩目录的缺点,Linux通过tar命令先打包一个目录中的所有文件,然后再压缩为.gz或者.bz2格式的内容就能解决这个问题。
打包命令tar
tar-cvf 打包文件名 源文件
选项:-C:打包 -V:显示过程 -f:指定打包后的文件名
例如:
![](https://img-blog.csdnimg.cn/img_convert/645b2f574c38ce57bc26eb91a3e96bf1.png)
![](https://img-blog.csdnimg.cn/img_convert/248a45f42cfce31e40e6c2b21fa62213.png)
.tar.gz压缩格式 其实.tar.gz格式是先打包为.tar格式,再压缩为.gz格式
tar-zcvf 压缩包名 # -z:压缩为.tar.gz格式(会保留源文件),压缩包名前可加绝对路径
tar-zxvf 压缩包名 # -x:解压缩.tar.gz格式(会保留原压缩文件)
tar-ztvf 压缩包名 # -t: 不解压压缩包,直接查看压缩包的内容
![](https://img-blog.csdnimg.cn/img_convert/4e2bf3a133843b8635f52a9a15f60e38.png)
![](https://img-blog.csdnimg.cn/img_convert/0c3d0abe90a43cb6dcd69affac2dc795.png)
![](https://img-blog.csdnimg.cn/img_convert/c90faa6e6b5926130a097c20fdbc14b9.png)
.tar.bz2压缩格式
tar -jcvf 压缩包名.tar.bz2 源文件
tar -jxvf 压缩包名.tar.bz2
tar -jtvf #查看压缩包的内容,不解压文件
![](https://img-blog.csdnimg.cn/img_convert/e125ea5c341e6457fbb0a3ce5bc1ad89.png)
在Linux中.tar.gz及.tar.bz2是两种最常见的压缩文件格式,从上面的实践可以看出,这两种文件格式可以很方便的压缩文件及目录,也可以查看压缩包里面所包含的内容,所以这两种格式需要熟练掌握,至于.zip,.gz,.bz2格式了解了解就够了,不需要熟练,要用到时,只要有点印象,找度娘就可以了。