shell腳本啓動關閉tomcat,查看日誌和備份項目

全是代碼,根據本身需求更改tomcat路徑和備份文件路徑便可。 sh tomcat.sh + (start/stop/restart/logs/backup) 指令便可執行對應啓動,關閉,重啓,查看日誌和備份操做。web

shell腳本以下:shell

#!/bin/bash  
#說明
#啓動服務./tomcat.sh start
#中止服務./tomcat.sh stop
#重啓服務./tomcat.sh restart
#查看日誌:啓動服務./tomcat.sh logs
  
tomcat_home=/usr/local/apache-tomcat-7.0.65
SHUTDOWN=$tomcat_home/bin/shutdown.sh
STARTTOMCAT=$tomcat_home/bin/startup.sh
  
case $1 in    
start) 
echo "啓動$tomcat_home,並輸出啓動日誌"
$STARTTOMCAT
#看啓動日誌
tail -f $tomcat_home/logs/catalina.out
;;
stop)
echo "關閉$tomcat_home"
$SHUTDOWN
#pidlist=`ps -ef |grep tomcat  |grep -v "grep"|awk '{print $2}'`
#kill -9 $pidlist
#上面殺死進程後會終止,用下列殺死進程命令
ps -ef |grep tomcat |grep $tomcat_home |grep -v 'grep'|awk '{print $2}' | xargs kill -9

#刪除日誌文件,若是你不先刪除能夠不要下面一行  
rm  $tomcat_home/logs/* -rf
#刪除tomcat的臨時目錄  
rm  $tomcat_home/work/* -rf
;;
restart)
echo "關閉$tomcat_home"
$SHUTDOWN
ps -ef |grep tomcat |grep $tomcat_home |grep -v 'grep'|awk '{print $2}' | xargs kill -9
#執行下列命令後殺死進程後會終止運行
#pidlist=`ps -ef |grep tomcat  |grep -v "grep"|awk '{print $2}'`
#kill -9 $pidlist

#刪除日誌文件,若是你不先刪除能夠不要下面一行  
#rm  $tomcat_home/logs/* -rf
#刪除tomcat的臨時目錄  
#rm  $tomcat_home/work/* -rf
echo "等待5秒後從新啓動$tomcat_home"
#每秒輸出一次時間
i=4
while [ $i -ge 0 ]
do
   echo "還剩$i秒啓動tomcat服務器"
   sleep 1
   let i--
done
echo "啓動$tomcat_home"
$STARTTOMCAT
#看啓動日誌  
tail -f $tomcat_home/logs/catalina.out
;;
logs)  
tail -f $tomcat_home/logs/catalina.out  
;;

#備份項目
backup)
TIME=`date +%Y%m%d%H%M%S`
echo '開始備份項目'
tar -zcvf  usr/local/backup/'examples_'$TIME'_BAK'.tar -c  usr/local/apache-tomcat-7.0.65/webapps/examples
ls -l /usr/local/apache-tomcat-7.0.65/webapps/examples >> /usr/local/backup/logs/'example_'$TIME'_BAK'.log
echo '完成備份項目'
echo usr/local/backup/'examples_'$TIME'_BAK'.tar
;;
esac

注意坑!直接啓動或重啓後控制檯輸出日誌狀態,要先CTRL+C關閉日誌輸出再關閉服務器鏈接,不然會致使tomcat服務器中止!apache

相關文章
相關標籤/搜索