Skip to content

Commit 481e35d

Browse files
author
luzhicheng
committed
更新md
更新md
1 parent 63ccb72 commit 481e35d

File tree

2 files changed

+121
-0
lines changed

2 files changed

+121
-0
lines changed
Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
## 常见的压缩指令
2+
* .z: compress程序压缩的文件
3+
* .zip: zip程序压缩的文件
4+
* .gz: gzip程序压缩的文件
5+
* .bz2: bzip2程序压缩的文件
6+
* .xz: xz程序压缩的文件
7+
* .tar: tar程序打包的数据,并没有压缩
8+
* .tar.gz: tar程序打包的文件并且经过gzip压缩
9+
* .tar.bz2: tar程序打包的文件并且经过bzip2压缩
10+
* .tar.xz: tar程序打包的文件并且经过xz压缩
11+
12+
**gzip,bzip2, xz压缩指令只能针对一个文件进行压缩与解压,如果要一次压缩一堆文件,需要先对这些文件进行打包后压缩。**
13+
(gzip, bzip2, xz 也能够针对目录来进行压缩,不过, 这两个指令对目录的压缩指的是“将目录内的所有文件 "分别" 进行压缩”的动作)
14+
15+
### gzip压缩
16+
**gzip应用最广泛,可以解开compress,zip,gzip压缩的文件。使用gzip压缩,默认情况源文件会被压缩成.gz的文件名,原始文件也就不再存在。**
17+
18+
gzip -d:解压缩
19+
20+
```python
21+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# ll
22+
total 112
23+
-rw-r--r-- 1 root root 55288 Feb 12 19:09 test.py
24+
-rw-r--r-- 1 root root 55288 Feb 18 10:15 test.py.bak
25+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# gzip test.py
26+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# ls
27+
test.py.bak test.py.gz
28+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# gzip -d test.py.gz
29+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# ls
30+
test.py test.py.bak
31+
```
32+
33+
### bzip2压缩
34+
```python
35+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# ls
36+
test.py
37+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# bzip2 test.py
38+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# ls
39+
test.py.bz2
40+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# bzip2 -d test.py.bz2
41+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# ls
42+
test.py
43+
```
44+
45+
### xz压缩
46+
```python
47+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# xz test.py
48+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# ls
49+
test.py.xz
50+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# xz -d test.py.xz
51+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# ls
52+
test.py
53+
```
54+
55+
## 打包指令 tar
56+
* -v: 在压缩/解压的过程中,将正在处理的文件名显示出来
57+
* -c:创建打包文件
58+
* -t:查看打包文件内容包含哪些文件名
59+
* -x:解打包或解压缩(-c,-t,-x不可同时出现)
60+
* -z:通过gzip进行压缩,此时文件名为‘xxx.tar.gz’
61+
* -j:通过bzip2进行压缩,此时文件名为‘xxx.tar.bz2’
62+
* -J:通过xz进行压缩,此时文件名为‘xxx.tar.xz’(-z,-j,-J不可同时出现)
63+
* -C 目录:解压缩到指定目录
64+
* -f 文件名:指定文件名
65+
66+
#### 打包压缩
67+
1. tar -zcv -f xxx.tar.gz 要被压缩的文件或目录名称: 使用gzip打包压缩
68+
2. tar -jcv -f xxx.tar.bz2 要被压缩的文件或目录名称: 使用bzip2打包压缩
69+
3. tar -Jcv -f xxx.tar.xz 要被压缩的文件或目录名称: 使用xz打包压缩
70+
71+
```python
72+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# ls
73+
bin
74+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# tar -zcv -f bin.tar.gz bin/
75+
bin/
76+
bin/hello.sh
77+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# tar -jcv -f bin.tar.bz2 bin/
78+
bin/
79+
bin/hello.sh
80+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# tar -Jcv -f bin.tar.xz bin/
81+
bin/
82+
bin/hello.sh
83+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# ls
84+
bin bin.tar.bz2 bin.tar.gz bin.tar.xz
85+
```
86+
87+
#### 查看打包的文件名
88+
1. tar -ztv -f bin.tar.gz:查看使用gzip压缩打包的文件内容
89+
2. tar -jtv -f bin.tar.bz2: 查看使用bzip2压缩打包的文件内容
90+
3. tar -Jtv -f bin.tar.xz: 查看使用xz压缩打包的文件内容
91+
92+
```python
93+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# tar -ztv -f bin.tar.gz
94+
drwxr-xr-x root/root 0 2021-02-18 11:25 bin/
95+
-rw-r--r-- root/root 145 2021-02-18 11:25 bin/hello.sh
96+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# tar -jtv -f bin.tar.bz2
97+
drwxr-xr-x root/root 0 2021-02-18 11:25 bin/
98+
-rw-r--r-- root/root 145 2021-02-18 11:25 bin/hello.sh
99+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# tar -Jtv -f bin.tar.xz
100+
drwxr-xr-x root/root 0 2021-02-18 11:25 bin/
101+
-rw-r--r-- root/root 145 2021-02-18 11:25 bin/hello.sh
102+
```
103+
104+
#### 解打包解压缩
105+
1. tar -zxv -f bin.tar.gz: 解压缩由gzip打包压缩的文件
106+
2. tar -jxv -f bin.tar.bz2:解压缩由bz2打包压缩的文件
107+
3. tar -Jxv -f bin.tar.xz:解压缩由xz打包压缩的文件
108+
4. tar -zxv -f bin.tar.gz -C /tmp:解压缩到指定目录
109+
110+
```python
111+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# tar -zxv -f bin.tar.gz
112+
bin/
113+
bin/hello.sh
114+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# tar -jxv -f bin.tar.bz2
115+
bin/
116+
bin/hello.sh
117+
[root@iZ8vb6ughzbdqkfd58dowoZ test]# tar -Jxv -f bin.tar.xz
118+
bin/
119+
bin/hello.sh
120+
```

linux/main.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,4 @@
1313
6. [Linux文件属性与权限](Linux文件权限.md)
1414
7. [Linux文件与目录管理](Linux文件目录管理.md)
1515
8. [Linux文件系统(索引式文件系统)](Linux文件系统.md)
16+
9. [Linux文件压缩与打包](Linux文件压缩与打包.md)

0 commit comments

Comments
 (0)