# 压缩
## 常见的压缩格式
常见的压缩格式: .zip、.gz、.bz2
常见的压缩格式: .tar.gz、.tar.gz2
## .zip
### 压缩
**语法**
~~~
# 压缩文件
zip 压缩文件名 源文件
# 压缩目录
zip -r 压缩文件名 源目录
~~~
**实例**
~~~
# 压缩wwwroot目录
zip -r www.zip wwwroot
~~~
### 解压缩
**语法**
~~~
# 压缩文件
unzip 压缩文件名
~~~
**实例**
~~~
# 解压www.zip文件
unzip www.zip
~~~
## .gz
### 压缩
**语法**
~~~
# 压缩文件,源文件会消失
gzip 源文件
# 压缩为.gz格式,源文件保留
gzip -c 源文件 > 压缩文件
# 压缩目录下的所有子文件,但不会压缩目录
gizp -r 目录
~~~
**实例**
~~~
# 压缩wwwroot目录
uzip -r wwwroot
~~~
### 解压缩
**语法**
~~~
# 压缩文件
gzip -d 压缩包
~~~
**实例**
~~~
# 解压www.zip文件
$ gzip -d www.zip
~~~
## .bz2
### 压缩
**语法**
~~~
# 压缩文件,源文件会消失
$ bzip2 源文件
# 压缩为.gz格式,源文件保留
$ bzip2 -k 源文件
~~~
注意:bzip2不能压缩目录
**实例**
~~~
# 压缩index.php
$ bzip2 -k index.php
~~~
### 解压缩
**语法**
~~~
# 解压缩, -k保留压缩文件
$ bzip2 -d 压缩文件
$ bunzip2 压缩文件
~~~
**实例**
~~~
# 解压www.zip文件
$ bzip2 -d www.zip
~~~
## tar.gz、tar.bz2
为了解决.gz、.bz2中对目录压缩的缺陷,所以linux提供了`tar.gz tar.bz2`的压缩方式。
+ 先把目录打包成.tar
+ 在把.tar压缩成`tar.gz tar.bz2`
~~~
# 把wwwroot打包
$ tar -cvf wwwroot.tar wwwroot/
# 压缩wwwroot.tar
$ gzip wwwroot.tar
~~~
### tar
#### 打包
语法:
~~~
$ tar -cvf 打包文件名 源文件
~~~
+ -c 打包
+ -v 显示过程
+ -f 指定打包后的文件名
**实例**
~~~
$ tar -cvf ll.tar ll
~~~
#### 解压tar
语法:
~~~
$ tar -xvf 打包文件名
~~~
+ x 解打包
**实例**
~~~
$ tar -xvf ll.tar
~~~
### tar直接打包成
**.tar.gz**
~~~
# 压缩
tar -zcvf 压缩包.tar.gz 源文件
# 解压缩
tar -zxvf 压缩包.tar.gz 源文件
~~~
+ -z: 压缩.tar.gz格式
+ -x:解压.tar.gz格式
**.tar.bz2**
~~~
# 压缩
tar -jcvf 压缩包.tar.bz2 源文件
# 解压缩
tar -jxvf 压缩包.tar.bz2 源文件
~~~
