常用压缩格式:.zip , .gz , .bz2 , .tar.gz , .tar.bz2 .
#压缩文件
zip 压缩文件名 源文件
#压缩目录
zip -r 压缩文件名 源目录
#解压缩.zip 文件
unzip 压缩文件
#压缩为.gz 格式的压缩文件,源文件会消失
gzip 源文件
#压缩为.gz 格式,源文件保留
#例如:gzip -c img > img.gz
gzip -c 源文件 > 压缩文件
#压缩目录下所有的子文件,但是不能压缩目录
gzip -r 目录
#解压缩文件
gzip -d 压缩文件
或者
gunzip 压缩文件
#解压缩目录(目录中的子文件会被解压缩,目录不会发生变化)
gunzip -r 目录
#压缩为.bz2 格式,不保留源文件
bzip2 源文件
#压缩之后保留源文件
bzip2 -k 源文件
#注意:bzip2 命令不能压缩目录
#解压缩,-k 保留压缩文件
bzip2 -d 压缩文件
或者
bunzip2 压缩文件
#打包
tar -cvf 打包文件名 源文件
选项:
-c: 打包
-v: 显示打包过程
-f: 指定打包后的文件名
例如:
tar -cvf img1.tar img1
#打包到指定目录
tar czvf test.tar *.txt -C /home/work
#解打包
tar -xvf 打包文件名
选项:
-x: 解打包
例如:
tar -xvf img1.tar
.tar.gz 格式是先打包为 .tar 格式,再压缩为 .gz 格式。
tar -zcvf 压缩包名.tar.gz 源文件
选项:
-z: 压缩为.tar.gz 格式
#解压缩
tar -zxvf 压缩包名.tar.gz
选项:
-x: 解压缩.tar.gz 格式
tar -jcvf 压缩包名.tar.bz2 源文件
选项:
-z: 压缩为.tar.bz2 格式
#解压缩
tar -jxvf 压缩包名.tar.bz2
选项:
-x: 解压缩.tar.bz2 格式
tar -jxvf 压缩包名.tar.bz2 -C 解压目录
选项:
-C: 用来指定想要解压到的目录
#把压缩包放到指定位置
tar -zcvf 绝对路径+压缩包名.tar.gz 源文件
例如:
tar -zcvf /test/img.tar.gz img
Linux 中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得将这一大堆文件先打成一个包(tar 命令),然后再用压缩程序进行压缩(gzip bzip2 命令)。
Linux 下最常用的打包程序就是 tar 了,使用 tar 程序打出来的包我们常称为 tar 包 , tar 包 文件的命令通常都是以 .tar 结尾的。生成 tar 包后,就可以用其它的程序来进行压缩。
tar [必要参数][选择参数] [文件]
用来压缩和解压文件,tar 本身不具有压缩功能,通过调用压缩功能实现的。
必要参数有如下:
可选参数如下:
#解包
tar xvf FileName.tar
#打包
tar cvf FileName.tar DirName
#说明:tar 是打包,不是压缩
#解压 1
gunzip FileName.gz
#解压 2
gzip -d FileName.gz
#压缩
gzip FileName
#解压
tar zxvf FileName.tar.gz
#压缩
tar zcvf FileName.tar.gz DirName
#解压 1
bzip2 -d FileName.bz2
#解压 2
bunzip2 FileName.bz2
#压缩
bzip2 -z FileName
#解压
tar jxvf FileName.tar.bz2
#压缩
tar jcvf FileName.tar.bz2 DirName
#解压 1
bzip2 -d FileName.bz
#解压 2
bunzip2 FileName.bz
#解压
tar jxvf FileName.tar.bz
#解压
uncompress FileName.Z
#压缩
compress FileName
#解压
tar Zxvf FileName.tar.Z
#压缩
tar Zcvf FileName.tar.Z DirName
#解压
unzip FileName.zip
#压缩
zip FileName.zip DirName
#解压
rar x FileName.rar
#压缩
rar a FileName.rar DirName 
