码迷,mamicode.com
首页 > 系统相关 > 详细

Shell自动备份部署新项目(2)

时间:2017-11-04 13:45:20      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:down   roc   cat   bin   进程   echo   停止   war   项目   

优化了脚本,实现自动备份,自动重启Tomcat

#!/bin/bash
NEW_WAR="mobile.war"
PROJECT_NAME="tomcat-app1"

#创建临时文件夹
tempDirName=`date "+%Y%m%d%H%M%S"`
tempDirName="bak/mobile-${tempDirName}"
echo "准备创建临时文件夹:${tempDirName}"
`mkdir ${tempDirName}`

#停止Tomcat
`sh /usr/tomcat/${PROJECT_NAME}/bin/shutdown.sh`
echo "停止Tomcat..."

#暂停4S等待Tomcat停止
sleep 4s

#杀掉Tomcat进程(如果还没停止的话)
PROCESS=`ps -ef|grep ${PROJECT_NAME}|grep -v grep|grep -v PPID|awk ‘{ print $2}‘`
for i in ${PROCESS}  
do
  echo "终止进程 ${PROJECT_NAME} process id = [ ${i} ]"
  kill -9 ${i}
done

#移动war文件到临时文件夹
`mv /usr/tomcat/${PROJECT_NAME}/webapps/ROOT.war ${tempDirName}`

#移动日志文件,暂时不做

#删除ROOT文件夹
echo "删除ROOT文件夹"
`rm -rf /usr/tomcat/${PROJECT_NAME}/webapps/ROOT`

#拷贝发布包到webapps
echo "拷贝发布包到webapps"
`cp ${NEW_WAR} /usr/tomcat/${PROJECT_NAME}/webapps/ROOT.war`

#启动Tomcat
`sh /usr/tomcat/${PROJECT_NAME}/bin/startup.sh`
echo "启动Tomcat"

#等待ROOT文件夹生成
echo "等待ROOT文件夹生成"
while :
do
	if [ -d "/usr/tomcat/${PROJECT_NAME}/webapps/ROOT" ]
	then
		break;
	fi
	echo -e "=\c"
	sleep 1s
done
echo "发布完毕 O(∩_∩)O~"

  

Shell自动备份部署新项目(2)

标签:down   roc   cat   bin   进程   echo   停止   war   项目   

原文地址:http://www.cnblogs.com/song-wentao/p/7782821.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!