由于修改tomcat的配置文件或手動操作數據庫數據后,tomcat的緩存和redis的緩存很嚴重,需要經常重啟tomcat來釋放緩存,經常就是手動重啟。
# 1、查找tomcat的進程IDps -ef | grep tomcat# 2、根據路徑去查找進程ID,然后逐個殺掉(畢竟一臺服務器上面是會有多個不同業務的tomcat在運行。)kill -9 [ID]
剛接觸這些命令的時候,會經常的手動去敲命令然后練習加深,久而久之,感覺是在浪費時間(有時候會頻繁修改數據庫內容)。
所以就想著,能不能來編條shell角本去替我做這些意義不大的工作。
新建文件:
touch restart.shvi restart.sh
文件內容:
#!/bin/bashkow=/opt/apache-tomcat-7.0.54open_acct=/opt/open_acct2echo "killing tomcat..."# 找到tomcat的進程id,并kill掉ps -ef | grep -v grep | grep -i '/opt/apache-tomcat-7.0.54/|/opt/open_acct2' | awk '{print $2}' | sed -e "s/^/kill -9 /g" | sh -echo "killed tomcat"echo "starting kow tomcat..."# 重新啟動tomcat$kow/bin/startup.sh$open_acct/tomcat2/bin/startup.sh$open_acct/apache-tomcat-7.0.54/bin/startup.sh
然后保存文件,添加可執行權限 :
chmod +x restart.sh
然后直接運行就可以重啟多個tomcat命令了。
注:上面有一部分 sed 和 sh 這兩個命令查了文檔也不太明白是什么意思,但大致感覺就是把進程ID緩存起來然后當作shell角本去執行。
我的想法是根據tomcat的執行路徑去匹配查找我想要的刪除掉的進程,
#這一段內容是匹配多個不同值,可以修改為你想匹配的路徑'/opt/apache-tomcat-7.0.54/|/opt/open_acct2'
以上所述是小編給大家介紹的Linux下重啟多個 tomcat 服務的腳本,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!
新聞熱點
疑難解答
圖片精選