Linux压缩war和解压war包

       把java程序打成war包。起先用zip命令打包,起先可以用,后来却无法使用。今天找到一个更好的办法。用jar命令,前提是要安装jdk。

操作:

1、把当前目录下的所有文件打包成game.war

jar -cvfM0 game.war ./

-c   创建war包

-v   显示过程信息

-f

-M

-0   这个是阿拉伯数字,只打包不压缩的意思

解压game.war

jar -xvf game.war

解压到当前目录

2、linux解压war包

可以用unzip命令

unzip project.war -d project

这样就在当前目录下解压project.war到project目录里面,参数-d的意思是创建project目录

附:unzip其它参数说明

-x "文件列表" 解压文件,但不包含文件列表中指定的文件

-t 测试压缩文件有无损坏,并不解压

-v 查看压缩文件的详细信息,具体包括压缩文件中包含的文件大小、文件名和压缩比等,并不解压

-n 解压时不覆盖已经存在的文件

-o 解压时覆盖已经存在的文件,并且不要求用户确认

-d 目录名 把压缩文件解压到指定目录下


同理zip命令也一样:

-r 递归压缩,将指定目录下的所有文件以及子目录全部压缩

-d 从压缩文件内删除指定的文件

-i “文件列表” 只压缩文件列表中的文件

-x “文件列表” 压缩时排除文件列表中指定的文件

-u 更新文件到压缩文件中

-m 将文件加入压缩文件压缩后,删除原始文件,即把文件移到压缩文件中

-F 尝试修复损坏的压缩文件

-T 检查压缩文件内的每个文件是否正确无误

- 压缩级别 压缩级别是一个1~9的数字


范 例:

zip命令可以用来将文件压缩成为常用的zip格式。unzip命令则用来解压缩zip文件。

1. 我想把一个文件abc.txt和一个目录dir1压缩成为yasuo.zip:

# zip -r yasuo.zip abc.txt dir1

2.我下载了一个yasuo.zip文件,想解压缩:

# unzip yasuo.zip

3.我当前目录下有abc1.zip,abc2.zip和abc3.zip,我想一起解压缩它们:

# unzip abc\?.zip

注释:?表示一个字符,如果用*表示任意多个字符。

4.我有一个很大的压缩文件large.zip,我不想解压缩,只想看看它里面有什么:

# unzip -v large.zip

5.我下载了一个压缩文件large.zip,想验证一下这个压缩文件是否下载完全了

# unzip -t large.zip

6.我用-v选项发现music.zip压缩文件里面有很多目录和子目录,并且子目录中其实都是歌曲mp3文件,我想把这些文件都下载到第一级目录,而不是一层一层建目录:

# unzip -j music.zip

你可能感兴趣的:(Linux压缩war和解压war包)