原文地址: https://blog.csdn.net/vevoly/article/details/77725750


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
  
Linux下常用压缩 解压命令和压缩比率对比
#常用的格式有: tar, tar.gz(tgz), tar.bz2, 
#不同方式,压缩和解压方式所耗CPU时间和压缩比率也差异也比较大.
 
 
 
 
 
1. tar (只是打包动作,相当于归档处理,不做压缩;解压也一样,只是把归档文件释放出来)
 
(1) 打包归档格式:
> tar -cvf examples.tar files|dir
#说明:
-c, --create  create a new archive 创建一个归档文件
-v, --verbose verbosely list files processed 显示创建归档文件的进程
-f, --file=ARCHIVE use archive file or device ARCHIVE  后面要立刻接被处理的档案名,比如--file=examples.tar
 
#举例:
tar -cvf file.tar file1       #file1文件
tar -cvf file.tar file1 file2 #file1,file2文件
tar -cvf file.tar dir         #dir目录
 
 
(2) 释放解压格式:
> tar -xvf examples.tar (解压至当前目录下)
> tar -xvf examples.tar  -C /path (/path 解压至其它路径)
 
#说明:
-x, --extract, extract files from an archive 从一个归档文件中提取文件
 
#举例:
> tar -xvf file.tar
> tar -xvf file.tar -C /temp  #解压到temp目录下
 
 
 
 
 
2. tar.gz tgz (tar.gz和tgz只是两种不同的书写方式,后者是一种简化书写,等同处理)
#这种格式是Linux下使用非常普遍的一种压缩方式,兼顾了压缩时间(耗费CPU)和压缩空间(压缩比率),其实这是对tar包进行gzip算法的压缩
 
(1) 打包压缩格式:
> tar -zcvf examples.tgz examples (examples当前执行路径下的目录)
 
说明:
-z, --gzip filter the archive through gzip 通过gzip压缩的形式对文件进行归档
 
举例:
> tar -zcvf file.tgz dir #dir目录
 
(2) 释放解压格式:
 
 
tar -zxvf examples.tar (解压至当前执行目录下)
tar -zxvf examples.tar  -C /path (/path 解压至其它路径)
 
举例:
tar -zcvf file.tgz
tar -zcvf file.tgz -C /temp
 
 
 
 
3 tar.bz Linux下压缩比率较tgz大,即压缩后占用更小的空间,使得压缩包看起来更小,但同时在压缩,解压的过程却是非常耗费CPU时间.
 
(1) 打包压缩格式:
> tar -jcvf examples.tar.bz2 examples   (examples为当前执行路径下的目录)
 
说明:
-j, --bzip2 filter the archive through bzip2 通过bzip2压缩的形式对文件进行归档
 
举例:
> tar -jcvf file.tar.bz2 dir #dir目录
 
 
(2) 释放解压:
> tar -jxvf examples.tar.bz2 (解压至当前执行目录下)
> tar -jxvf examples.tar.bz2  -C /path (/path 解压至其它路径)
 
举例:
> tar -jxvf file.tar.bz2
> tar -jxvf file.tar.bz2 -C /temp
 
 
 
 
4 gzip
 
压缩:
> gzip -d examples.gz examples
 
解压:
> gunzip examples.gz
 
 
 
 
 
5 zip
#zip 格式是开放且免费的,所以广泛使用在 Windows、Linux、MacOS 平台,要说 zip 有什么缺点的话,就是它的压缩率并不是很高,不如 rar及 tar.gz 等格式.
压缩:
> zip -r examples.zip examples (examples为目录)
 
解压:
> zip examples.zip
 
 
 
 
 
6 .rar
压缩:
> rar -a examples.rar examples
 
解压:
> rar -x examples.rar
 
 
 
 
 
#压缩比率,占用时间对比,首先明确一个概念:
#压缩比率=原内容大小/压缩后大小,压缩比率越大,则表明压缩后占用空间的压缩包越小
 
综合起来,在压缩比率上: tar.bz2 > tgz > tar
占用空间与压缩比率成反比: tar.bz2 < tgz < tar
耗费时间(打包,解压)
打包:tar.bz2 > tgz > tar
解压: tar.bz2 > tar > tgz
从效率角度来说,当然是耗费时间越短越好
#物理空间与时间的矛盾(想占用更小的空间,得到高压缩比率,肯定要牺牲较长的时间;反之,如果时间较为宝贵,要求快速,那么所得的压缩比率一定较小,当然会占用更大的空间了).
 
  

---------------------------------------------------------------------------------------------
唯有志存高远,方能风行天下。

道之所存,虽千万人吾往矣! 情之所钟,虽千万里吾念矣~

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。