1.創建腳本文件
vi tomcat.sh
2.賦予權限
chmod -R 777 tomcat.sh
3.寫腳本
tomcat_home=/usr/local/cohesion/project-test/test/apache-tomcat-8.5.31 #【3.1】 停止tomcat變量 SHUTDOWN=$tomcat_home/bin/shutdown.sh #【3.2】 啟動tomcat變量 STARTTOMCAT=$tomcat_home/bin/startup.sh
#【3.3】 刪除項目文件 如果是局部發布這句不需要 這只是正對jenkins整個war發布
rm -rf /usr/local/cohesion/project-test/test/apache-tomcat-8.5.31/webapps/eureka-1.0.0* #得到進程ID 這里也可以簡寫 如果你ps -ef|grep 項目名稱 可以帶出PID 那么可以直接寫成這樣
#之前為什么寫那么長 是因為在用jenkins調用腳本的時候,也會帶出jenkins調用腳本的那個進程 這樣kill -9 就會killjenkins進程 導致一建發布中斷
#所以這里一直寫到了conf文件夾目錄
#如果不需要用到jenkins可以用下面簡潔版 得出PID命令
#PID=`ps -ef |grep 項目名稱 |grep -v grep | awk '{print $2}'`
#【3.4】 獲取進程ID
PID=`ps -ef |grep usr/local/cohesion/project-test/test/apache-tomcat-8.5.31/conf |grep -v grep | awk '{print $2}'`
if [ ! "$PID" ];then # 這里判斷TOMCAT進程是否存在
echo "進程不存在"
else
echo "進程存在 殺死進程PID$PID"
kill -9 $PID
fi
#【3.5】啟動項目
$STARTTOMCAT
4.其他服務重啟