全是代码,根据本身需求更改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