首先将打包好的 war 包(举例 management-20160809-1.0.war),传到 tomcat 的 webapps 目录下,然后在 tomcat 目录下新建 deploy.sh 脚本。
#!/bin/shhomeDir="/usr/local/tomcat/apache-tomcat-8.5.4/"webappsDir="/usr/local/tomcat/apache-tomcat-8.5.4/webapps/"sh ${homeDir}stop.shcd ${webappsDir}for i in $(ls *management*.war)do echo "delete management..." rm -rf management echo "${i}..." echo "rename project..." mv $i management.war echo "unzip management.war..." unzip -n management.war -d managementecho "backup management..." cp -avx ${webappsDir}management.war ${homeDir}backup/management echo "delete management.war..." rm -f management.war breakdoneecho "startup tomcat..."sh ${homeDir}bin/startup.sh
同时给 deploy.sh 脚本赋予相应的权限:
cd /usr/local/tomcat/apache-tomcat-8.5.4chmod 775 deploy.sh
到时候 调用 deploy.sh 即可。
同时有一个停止 tomcat 的脚本 stop.sh :
homeDir="/usr/local/app/tomcat7/"pid=$(ps -ef |grep java|grep ${homeDir}|awk '{print $2}')if [ -n "${pid}" ]; then echo "Shutdown..." sh ${homeDir}bin/shutdown.sh sleep 3 pid=$(ps -ef |grep java|grep ${homeDir}|awk '{print $2}') if [ -n "${pid}" ]; then echo "kill tomcat...pid = ${pid}" kill -9 ${pid} sleep 1 fifi
同样赋予权限:
cd /usr/local/tomcat/apache-tomcat-8.5.4chmod 775 stop.sh
为防止在调用 tomcat 命令时出现问题,在 tomcat bin 目录下 catalina.sh 中 指定 java 环境:
export JAVA_HOME=/usr/java/jdk1.7.0_79export JRE_HOME=/usr/java/jdk1.7.0_79/jre
最后调用 deploy.sh 即可。