Linux中的压缩命令
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
将coding目录压缩为:coding.zip文件:zip -r coding.zip coding (由下图可知会压缩目录中的所有内容)
将coding目录压缩为:coding.zip文件:zip coding.zip coding (仅仅只是压缩了coding/,里面不含coding文件夹中原先的内容)
解压coding.zip文件(上图得到的coding.zip文件),可见原来的first.c等文件全部不见了
.gz格式语法:
gzip 源文件 #压缩为.gz格式的压缩文件,源文件会消失
gzip -c 源文件 > 压缩文件 #压缩为.gz格式,源文件保留例如:gzip-c cangls>cangls.gz
gzip -r 目录 #压缩目录下所有的子文件,但是不能压缩目录
gunzip 压缩文件名 #解压压缩文件
.bz2格式语法
bzip2源文件 #压缩为.bz2格式,不保留源文件
bzip2 -k源文件 #压缩之后保留源文件
注意:bzip2命令不能压缩目录
bzip2 -d压缩文件 #解压缩,-k保留压缩文件
bunzip2压缩文件 #解压缩,-k保留压缩文件
二、.tar.gz,.tar.bz2格式
针对.gz及.bz2格式不能压缩目录的缺点,Linux通过tar命令先打包一个目录中的所有文件,然后再压缩为.gz或者.bz2格式的内容就能解决这个问题。
打包命令tar
tar-cvf 打包文件名 源文件
选项:-C:打包 -V:显示过程 -f:指定打包后的文件名
例如:
.tar.gz压缩格式 其实.tar.gz格式是先打包为.tar格式,再压缩为.gz格式
tar-zcvf 压缩包名 # -z:压缩为.tar.gz格式(会保留源文件),压缩包名前可加绝对路径
tar-zxvf 压缩包名 # -x:解压缩.tar.gz格式(会保留原压缩文件)
tar-ztvf 压缩包名 # -t: 不解压压缩包,直接查看压缩包的内容
.tar.bz2压缩格式
tar -jcvf 压缩包名.tar.bz2 源文件
tar -jxvf 压缩包名.tar.bz2
tar -jtvf #查看压缩包的内容,不解压文件
在Linux中.tar.gz及.tar.bz2是两种最常见的压缩文件格式,从上面的实践可以看出,这两种文件格式可以很方便的压缩文件及目录,也可以查看压缩包里面所包含的内容,所以这两种格式需要熟练掌握,至于.zip,.gz,.bz2格式了解了解就够了,不需要熟练,要用到时,只要有点印象,到时候找LinuxCool就可以了。