Skip to content

Commit 6a539b6

Browse files
authored
Update tar.md
1 parent 29ff471 commit 6a539b6

1 file changed

Lines changed: 86 additions & 0 deletions

File tree

command/tar.md

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,92 @@ tar -tf all.tar
7777
# 这条命令是列出all.tar包中所有文件,-t是列出文件的意思
7878
```
7979

80+
81+
#### zip格式
82+
83+
压缩: zip -r [目标文件名].zip [原文件/目录名]
84+
解压: unzip [原文件名].zip
85+
注:-r参数代表递归
86+
87+
#### tar格式(该格式仅仅打包,不压缩)
88+
89+
打包:tar -cvf [目标文件名].tar [原文件名/目录名]
90+
解包:tar -xvf [原文件名].tar
91+
注:c参数代表create(创建),x参数代表extract(解包),v参数代表verbose(详细信息),f参数代表filename(文件名),所以f后必须接文件名。
92+
93+
#### tar.gz格式
94+
95+
方式一:利用前面已经打包好的tar文件,直接用压缩命令。
96+
97+
压缩:gzip [原文件名].tar
98+
解压:gunzip [原文件名].tar.gz
99+
100+
方式二:一次性打包并压缩、解压并解包
101+
102+
打包并压缩: tar -zcvf [目标文件名].tar.gz [原文件名/目录名]
103+
解压并解包: tar -zxvf [原文件名].tar.gz
104+
注:z代表用gzip算法来压缩/解压。
105+
106+
#### tar.bz2格式
107+
108+
方式一:利用已经打包好的tar文件,直接执行压缩命令:
109+
110+
压缩:bzip2 [原文件名].tar
111+
解压:bunzip2 [原文件名].tar.bz2
112+
方式二:一次性打包并压缩、解压并解包
113+
114+
打包并压缩: tar -jcvf [目标文件名].tar.bz2 [原文件名/目录名]
115+
解压并解包: tar -jxvf [原文件名].tar.bz2
116+
注:小写j代表用bzip2算法来压缩/解压。
117+
118+
#### tar.xz格式
119+
120+
方式一:利用已经打包好的tar文件,直接用压缩命令:
121+
122+
压缩:xz [原文件名].tar
123+
解压:unxz [原文件名].tar.xz
124+
方式二:一次性打包并压缩、解压并解包
125+
126+
打包并压缩: tar -Jcvf [目标文件名].tar.xz [原文件名/目录名]
127+
解压并解包: tar -Jxvf [原文件名].tar.xz
128+
注:大写J代表用xz算法来压缩/解压。
129+
130+
#### tar.Z格式(已过时)
131+
132+
方式一:利用已经打包好的tar文件,直接用压缩命令:
133+
134+
压缩:compress [原文件名].tar
135+
解压:uncompress [原文件名].tar.Z
136+
方式二:一次性打包并压缩、解压并解包
137+
138+
打包并压缩: tar -Zcvf [目标文件名].tar.Z [原文件名/目录名]
139+
解压并解包: tar -Zxvf [原文件名].tar.Z
140+
注:大写Z代表用ncompress算法来压缩/解压。另,ncompress是早期Unix系统的压缩格式,但由于ncompress的压缩率太低,现已过时。
141+
142+
#### jar格式
143+
144+
压缩:jar -cvf [目标文件名].jar [原文件名/目录名]
145+
解压:jar -xvf [原文件名].jar
146+
注:如果是打包的是Java类库,并且该类库中存在主类,那么需要写一个META-INF/MANIFEST.MF配置文件,内容如下:
147+
148+
Manifest-Version: 1.0
149+
Created-By: 1.6.0_27 (Sun Microsystems Inc.)
150+
Main-class: the_name_of_the_main_class_should_be_put_here
151+
然后用如下命令打包:
152+
153+
jar -cvfm [目标文件名].jar META-INF/MANIFEST.MF [原文件名/目录名]
154+
这样以后就能用“java -jar [文件名].jar”命令直接运行主类中的public static void main方法了。
155+
156+
#### 7z格式
157+
158+
压缩:7z a [目标文件名].7z [原文件名/目录名]
159+
解压:7z x [原文件名].7z
160+
注:这个7z解压命令支持rar格式,即:
161+
162+
7z x [原文件名].rar
163+
164+
#### 其它例子
165+
80166
**将文件全部打包成tar包**
81167

82168
```

0 commit comments

Comments
 (0)