ubuntu/linux下打包壓縮war、解壓war包和jar命令


把project_a文件夾下的文件打包成project.war

1.      打包

jar -xvf project.war /project_a

-c  創建war包

-v  顯示過程信息

-f  指定 JAR 文件名,通常這個參數是必須的

-M  不產生所有項的清單(MANIFEST〕文件,此參數會忽略 -m 參數

-0  這個是阿拉伯數字,只打包不壓縮的意思

2.      解壓

jar -xvf project.war

解壓到當前目錄


jar 命令詳解

使用不帶任何的 jar 命令我們可以看到 jar 命令的用法如下:

jar {ctxu}[vfm0M] [jar-文件] [manifest-文件] [-C 目錄] 文件名 ...

其中 {ctxu} 是 jar 命令的子命令,每次 jar 命令只能包含 ctxu 中的一個,它們分別表示:

-c 創建新的 JAR 文件包

-t 列出 JAR 文件包的內容列表

-x 展開 JAR 文件包的指定文件或者所有文件

-u 更新已存在的 JAR 文件包 (添加文件到 JAR 文件包中)

特別注意,在參數的下達中, c/x/t/u 僅能存在一個!不可同時存在!

因爲不可能同時壓縮與解壓縮。

-z :是否同時具有 gzip 的屬性?亦即是否需要用 gzip 壓縮?

-j :是否同時具有 bzip2 的屬性?亦即是否需要用 bzip2 壓縮?

-v :壓縮的過程中顯示文件!這個常用,但不建議用在背景執行過程!

-f 指定 JAR 文件名,通常這個參數是必須的

請留意,在 f 之後要立即接檔名喔!不要再加參數!

   例如使用『 tar -zcvfP tfile sfile』就是錯誤的寫法,要寫成

   『 tar -zcvPf tfile sfile』纔對喔!

-p :使用原文件的原來屬性(屬性不會依據使用者而變)

-P :可以使用絕對路徑來壓縮!

-N :比後面接的日期(yyyy/mm/dd)還要新的纔會被打包進新建的文件中!

–exclude FILE:在壓縮的過程中,不要將 FILE 打包!

-m 指定需要包含的 MANIFEST 清單文件

-0 只存儲,不壓縮,這樣產生的 JAR 文件包會比不用該參數產生的體積大,但速度更快

-M 不產生所有項的清單(MANIFEST〕文件,此參數會忽略 -m 參數

[jar-文件] 即需要生成、查看、更新或者解開的 JAR 文件包,它是 -f 參數的附屬參數

[manifest-文件] 即 MANIFEST 清單文件,它是 -m 參數的附屬參數

[-C 目錄] 表示轉到指定目錄下去執行這個 jar 命令的操作。它相當於先使用 cd 命令轉該目錄下再執行不帶 -C 參數的 jar 命令,它只能在創建和更新 JAR 文件包的時候可用。  

文件名 ... 指定一個文件/目錄列表,這些文件/目錄就是要添加到 JAR 文件包中的文件/目錄。如果指定了目錄,那麼 jar 命令打包的時候會自動把該目錄中的所有文件和子目錄打入包中。

本文學習自linux公社,轉載請註明出處:www.linuxidc.com/Linux/2012-12/75811p2.htm
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章