linux下實現自動部署tomcat的指令碼,linuxtomcat
linux下實現自動部署tomcat的指令碼
由於經常部署war到tomccat上,經常有一些重複的工作要做:停服務、備份war包、上傳新的war包、啟動服務。索性就寫了一個自動部署的指令碼。
指令碼如下autoDeploy.sh:
1 #! /bin/sh 2 echo '####################開始自動部署####################' 3 path=`pwd` #當前路徑 4 tomcatPath=tomcat-7 #指定tomcat檔案目錄名稱 5 cd ../$tomcatPath/bin #進入tomcat的bin目錄 6 PID=$(ps -fu `whoami`|grep tomcat|grep -v grep|awk '{print $2}') 7 if [ -z "$PID" ];then 8 echo "no tomcat process" 9 else10 ./shutdown.sh #停止tomcat服務11 fi12 sleep 1 #休眠1s13 cd ../webapps #進入tomcat的webapps目錄14 rm -fr test #刪除test檔案目錄15 mv test.war test.war.$(date +%Y%m%d) #備份webapps下的test16 cp $path/test.war ./ #複製test.war到webapps路徑下17 sleep 1 #休眠1s18 cd ../bin19 ./startup.sh #啟動tomcat服務20 echo '####################部署結束####################'
說明:
1.建立一個目錄autoDeploy與tomcat目錄放在同級目錄下
(1)autoDeploy.sh放在autoDeploy目錄下
(2)需要部署的test.war放在autoDeploy目錄下(test.war為需要部署的到tomcat上的war包)
2.tomcatPath=tomcat-7(指定tomcat檔案目錄名稱,tomcat-7改為自己tomcat的目錄名稱)
3.執行autoDepoy.sh即可實現自動部署
建立的autoDepoy.sh若沒有執行許可權,需要執行:chmod +x autoDeploy.sh