压缩、解压
Linux和Mac系统通常有2种压缩格式,后缀名分别是:
-
.tar,称之为tarball,归档文件,即简单的将文件组装到一个.tar的文件内,并没有太多文件体积的减少,仅仅是简单的封装
-
.gz,也常见为.tar.gz,gzip格式压缩文件,即使用gzip压缩算法将文件压缩到一个文件内,可以极大的减少压缩后的体积
tar语法
语法:tar [-c -v -x -f -z -C] 参数1 参数2 ... 参数N
-c
,创建压缩文件,用于压缩模式
-v
,显示压缩、解压过程,用于查看进度-x
,解压模式-f
,要创建的文件,或要解压的文件,-f选项必须在所有选项中位置处于最后一个-z
,gzip模式,不使用-z就是普通的tarball格式-C
,选择解压的目的地,用于解压模式
注意:
-z
选项如果使用的话,一般处于选项位第一个-f
:选项,必须在选项位最后一个-C
:选项单独使用,和解压所需的其它参数分开
tar压缩
针对这两种格式,使用tar命令均可以进行压缩和解压缩的操作
示例:
tar -zcvf 压缩包 被压缩1...被压缩2...被压缩N
-z
表示使用gzip
,可以不写
tar压缩的常用组合为:
-
tar -cvf test.tar 1.txt 2.txt 3.txt
:将1.txt 2.txt 3.txt 压缩到test.tar文件内 -
tar -zcvf test.tar.gz 1.txt 2.txt 3.txt
:将1.txt 2.txt 3.txt 压缩到test.tar.gz文件内,使用gzip模式
tar解压
语法:tar -zxvf 被解压的文件 -C 要解压去的地方
-z
,表示使用gzip,可以省略-C
,可以省略,指定要解压去的地方,不写解压到当前目录
常用的tar解压组合有:
-
tar -xvf test.tar
:解压test.tar,将文件解压至当前目录 -
tar -xvf test.tar -C /home/user
:解压test.tar,将文件解压至指定目录(/home/user) -
tar -zxvf test.tar.gz -C /home/user
:以Gzip模式解压test.tar.gz,将文件解压至指定目录(/home/user)
zip语法
可以使用zip
命令,压缩文件为zip
压缩包
语法:zip [-r] 参数1 参数2 ... 参数N
-r
,被压缩的包含文件夹的时候,需要使用-r
选项,和rm
、cp
等命令的-r
效果一致,即递归处理文件夹内的文件
zip压缩
zip [-r] 参数1 参数2 ... 参数N
示例:
-
zip test.zip a.txt b.txt c.txt
:将a.txt b.txt c.txt 压缩到test.zip文件内 -
zip -r test.zip test user a.txt
:将test、user两个文件夹和a.txt文件,压缩到test.zip文件内
unzip解压
使用unzip
命令,可以方便的解压zip
压缩包
语法:unzip [-d] 参数
-
-d
,指定要解压去的位置,同tar
的-C
选项 -
参数,被解压的
zip
压缩包文件
示例:
-
unzip test.zip
:将test.zip解压到当前目录 -
unzip test.zip -d /home/user
:将test.zip解压到指定文件夹内(/home/user)