#!/bin/sh#kill tomcat pid#这句尤为重要export BUILD_ID=apache-tomcat-app_build_id# 1.关闭Tomcatpidlist=`ps -ef | grep apache-tomcat-app | grep -v "grep" | awk '{print $2}'`function stop(){if [ "$pidlist" == ""]thenecho "----tomcat 已经关闭----"elseecho "tomcat进程:$pidlist"kill -9 $pidlisecho "KILL $pidlis:"fi}stoppidlist2=`ps -ef | grep apache-tomcat-app | grep -v "grep" | awk '{print $2}'`if [ "$pidlist2" == ""]thenecho "----关闭 Tomcat 成功----"elseecho "----关闭 Tomcat 失败 ----"fi# 2.移除原来Tomcat中webapps中的项目文件夹rm -rf /home/eli/apache-tomcat-app/webapps/ROOT*# 3.复制jenkins生成的 war包到Tomcat的webapps中cp -r /home/eli/.jenkins/workspace/enjoy-eli/target/jenkins-demo-1.0.war /home/eli/apache-tomcat-app/webappssleep 3s# 4.修改war包名称mv /home/eli/apache-tomcat-app/webapps/jenkins-demo-1.0.war /home/eli/apache-tomcat-app/webapps/ROOT.war# 5.启动Tomcatcd /home/eli/apache-tomcat-app/bin./startup.sh
说明:export 配置环境变量
1.启动 shell 脚本(进程)拉 Tomcat(子进程)
2.shell 脚本执行完成,Jenkins 执行完成,任务结束
3.结束 shell 脚本,Tomcat 子进程也会跟着结束
4.配置 export 环境变量,配置的进程不会结束(apache-tomcat-app_build_id 进程就不随着 shell 脚本的执行完成而结束)
