0%

linux压缩解压缩

压缩解压缩

linux中压缩和解压文件也是很常见的

zip格式

zip格式的压缩包在windows很常见,linux中也有zip格式的压缩包

1
2
3
4
5
6
7
8
9
10
11
12
13
#压缩
#zip [选项] 压缩包名 文件(多个文件空格隔开)
zip 1.zip 123.txt 456.txt

zip -r 2.zip /home/user1

----------------------
-r 压缩目录

#解压缩
unzip [选项] 压缩包名
--------------------
-d 指定解压缩位置

gz格式

gz格式在linux中是一种很常用的格式,gzip不支持压缩目录

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#压缩
#gzip [选项] 源文件
gzip test.txt

#解压
gzip -d test.txt.gz

----------------------
选项
-d 解压缩
-c 将源文件输出到控制台
-r 压缩目录(也是将该目录下的文件分别压缩)
-t 检查命令参数中的压缩文件的完整性
-v 显示每个压缩文件的名字和压缩率
-N N取1-9,表示压缩等级
-f 强制压缩
-l 压缩文件使用的参数,列出每个压缩文件如下内容
compressed size 压缩文件长度
uncompressed size 压缩前文件的长度
ratio 压缩率
uncompressed-name 压缩前文件名

gzip压缩之后源文件就不见了,且不支持将多个文件压缩至一个压缩包中,压缩包的名称为源文件名称+.gz

bz2格式

bzip2可以提供比gzip更高的压缩率,但是压缩速度变慢了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#压缩
#bzip2 [选项] 源文件
bzip2 123.txt

#解压缩
bzip2 -d 123.txt.bz2

---------------------------
选项
-d 解压缩
-z 压缩
-v 显示压缩时详细信息
-k 压缩时保留原文件
-c 直接输出到控制台

该格式不可以压缩目录

tar格式

由于多个文件一起压缩打包gzip和bz2无法完成,需要使用tar,但是tar命令只可以打包,不会压缩

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#压缩
#tar [选项] [-f 压缩名] 源文件
tar -cvf 11.tar 123.txt
-------------------------------
选项
-c 打包
-f 压缩名,如果多个参数组合的情况下带有-f,f放在最后
-v 显示打包过程
-z 是否同时用gzip压缩
-j 是否同时用bzip2压缩
-- exclude filename 在打包时,不要讲filename文件包括在内

#解压缩
#tar [选项] 压缩包
tar -xvf 11.tar

---------------------
选项

-f 压缩名
-v 显示解压缩过程
-x 解压缩
-t 查看包中有哪些文件,不解压

tar.gz和tar.bz2格式

由于tar格式只会打包不会压缩,而gzip和bz2只会压缩不会打包,所以将两者结合了一下,先进行tar打包,在进行gzip压缩,但是如果每次压缩和解压都要两步操作太麻烦了,所以出现了.tar.gz和.tar.bz2格式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#压缩
#tar [选项] [-f 压缩名] 源文件
tar -zcvf 11.tar.gz 123.txt
-------------------------------
选项
-z 压缩和解压缩tar.gz格式(仅用于识别格式),为gzip格式
-j 压缩和解压缩tar.bz2格式(仅用于识别格式),为bzip2格式
-c 打包
-f 压缩名
-v 显示打包过程

#解压缩
#tar [选项] 压缩包
tar -zxvf 11.tar

---------------------
选项
-z 压缩和解压缩tar.gz格式(仅用于识别格式)
-j 压缩和解压缩tar.bz2格式(仅用于识别格式)
-f 指定需要解压的文件
-v 显示解压缩过程
-x 解压缩
-t 查看包中有哪些文件,不解压
-d 指定解压的目录

欢迎关注我的其它发布渠道