压缩指令:
gzip
说明:
linux
压缩文件为
.gz
(
gzip
)格式
语法:
gzip [
选项
]
文件名
选项:
-r
:可以将目录下的文件递归压缩
-l
:显示已经压缩文件的压缩信息
-d
:解压缩
eg
:
gzip aa.c
压缩
aa.c
文件
gzip -d aa.c.gz
解压
aa.c.gz
gzip -r a
递归压缩
a
文件夹,将
a
文件夹中的所有文件进行压缩,文件夹没有变化
gzip -dr a.c.gz
递归解压
a.c.gz
注意:
gunzip aa.c.gz
也可以解压扩展名是
.gz
的文件
注意:
gzip
只针对文件,文件夹无变化
更高的压缩效率指令:
bzip2
说明:压缩文件为
.bz2
的格式
语法:
bzip2 [
选项
]
文件名
选项:
-k
:保留源文件
-d
:解压缩
-f
:覆盖解压(文件夹中有同名文件,用解压出来的文件覆盖同名文件)
注意:
bunzip2 -f a.txt.bz2
也可以解压缩扩展名是
.bz2
的文件
总结
gzip
和
bzip2
的区别:
1. gzip
可以压缩文件夹中的所有文件,
bzip2
不可以(待确认)
2.
与
gzip
相比,
bzip2
有更高的压缩效率
gzip
和
bzip2
压缩指令不能混用,主要通过压缩文件的扩展名区分
压缩文件或文件夹;
zip
说明:文件的后缀名是
.zip
语法:
zip [
选项
]
压缩后的文件名 文件名
/
目录
选项:
-r
:递归压缩,用于对文件夹的操作
注意:不带选项会保留源文件
eg
:
zip love.zip love2.txt
压缩
love2.txt
unzip love.zip
解压缩
love.zip
zip a.zip a
压缩目录
a
unzip a.zip
解压缩
a.zip
zip -r a2.zip a
递归压缩目录
a
unzip -r a2.zip
递归解压缩
a2.zip
zip ./my/love.zip love2.txt
压缩文件到
./my
目录下
注意:
当解压缩时,如果有同名文件或同名文件夹,会有提示让用户选择覆盖方式:
y
:覆盖文件
n
:不覆盖文件
A
:覆盖文件夹
N
:不覆盖文件夹
r
:重命名
打包并压缩指令:
tar
语法:
tar [
选项
]
产生的文件名称 被压缩的文件或文件夹列表(用空格隔开)
选项:
-c
:打包
-v
:显示命令执行的过程
-f
:用于指定打包文件的名称
-z
:打包时压缩
/
解包同时解压缩,所以操作的文件扩展名为
.gz
(
gz
说明是用的
gzip
)
-x
:解包
-j
:与
-z
类似,不过使用的是
bzip2
指令,扩展名为
.bz2
eg
:
tar -cvf love.tar love2.txt love.txt
打包
love2.txt
,
love.txt
文件并压缩到
love.tar
中
tar -xvf love.tar
解包
love.tar
中的
love2.txt
和
love.txt
总结:
1.
*.tar
:用
tar -xvf
解包
2.
*.gz
: 用
gzip -d
解压缩
3.
*.tar.gz
:和
*.tgz
用
tar -xvzf
解压
4.
*.bz2
:用
bzip2 -d
解压
5.
*.tar.bz2
:用
tar -xvjf
解包
6.
*.zip
:用
unzip
解压