linux下tomcat一键发布,包含停用服务、删除war包、拷贝war包及备份、重启服务等,之前的版本还包含svn更新及打包,后来在生产上怕出问题,改为本地打war包后,ftp上传到指定目录的方式。linux
文件名称作了隐藏更改处理,修改文件路径后可以使用。web
#!/bin/sh #1 instance="apache-tomcat-8.0.53"; tomcat_progrm="/home/laowang/programs/apache-tomcat-8.0.53"; target_home="/home/laowang/programs/dist"; target_home_back="/home/laowang/programs/dist/back"; function running(){ b="" for ((i=0;i<=100;i+=2)) do printf "progress:[%-50s]%d%%\r" $b $i sleep 0.2 b=#$b done echo } #2 pid=`(ps -ef | grep $tomcat_progrm | grep -v "grep") | awk '{print $2}'` kill -9 $pid running ; ps aux | grep $instance | grep -v grep; #3 rm -rf ${tomcat_progrm}/webapps/laowang* ; #4 mkdir ${target_home_back}/$(date +%Y%m%d%H%M%S) cp ${target_home}/*.war ${target_home_back}/$(date +%Y%m%d%H%M%S)/ cp ${target_home}/*.war ${tomcat_progrm}/webapps/laowang-web.war echo ${tomcat_progrm}/bin/startup.sh ; #5 nohup ${tomcat_progrm}/bin/startup.sh; running; #6 tail -f ${tomcat_progrm}/logs/catalina.out ;
三个变量分别为tomcat解压目录,tomcat的war包是上传目录(能够任意定,只要有操做权限就行)、tomcat的war包子目录,备份用,也能够本身定义。apache
#1 instance="apache-tomcat-8.0.53"; tomcat_progrm="/home/laowang/programs/apache-tomcat-8.0.53"; target_home="/home/laowang/programs/dist"; target_home_back="/home/laowang/programs/dist/back";
#2 pid=`(ps -ef | grep $tomcat_progrm | grep -v "grep") | awk '{print $2}'` kill -9 $pid running ; ps aux | grep $instance | grep -v grep;
#3 rm -rf ${tomcat_progrm}/webapps/laowang* ;
#4 mkdir ${target_home_back}/$(date +%Y%m%d%H%M%S) cp ${target_home}/*.war ${target_home_back}/$(date +%Y%m%d%H%M%S)/ cp ${target_home}/*.war ${tomcat_progrm}/webapps/laowang-web.war echo ${tomcat_progrm}/bin/startup.sh ;
#5 nohup ${tomcat_progrm}/bin/startup.sh;
#6 tail -f ${tomcat_progrm}/logs/catalina.out ;
假如根据日志看没啥问题,或者有信心没问题,可直接按ctrl+c退出。tomcat