shell 脚本解压war包+备份+tomcat自动关闭+启动
公司的开发环境每次替换war包时候,老是需要重新上传并且手动解压,然后再去重启tomcat。觉得这样子太麻烦了,于是写了一个shell脚本,自动解压+备份+tomcat自动关闭+启动。代码如下:
#关闭正在运行的tomcat
ps -ef | grep /home/tomcat/tomcat-mall-api-web/ | grep -v grep | awk '{print $2}'| sed -e "s/^/kill -9 /g" | sh -
#获取当前的目录
dirname=$(cd `dirname $0`; pwd)
#获取当前目录所有的war包
file=$dirname/*.war
#获取当前时间 格式 年月日 时分秒 用于生成文件夹做备份
datename=$(date +%Y%m%d-%H%M%S)
#创建备份文件夹
mkdir $dirname/$datename
#备份文件
mv $file $dirname/$datename
#删除以前war包解压的文件
rm -rf $dirname/index.jsp $dirname/WEB-INF $dirname/META-INF
#上传war包
rz
#加压war包到制定目录 (注意 jar -xvf **.jar不能解压到制定目录)
unzip $file -d $dirname/
#解压完成
echo "解压完成"
#调用启动 由于tomcat的目录和项目不在一个目录,因此需要一个启动脚本 并调用source ./afterupload.sh 或者. ./afterupload.sh 注意后者有一个空格
source ./afterupload.sh
afterupload.sh内容:
cd /home/tomcat/tomcat-mall-api-web/bin
./startup.sh & tail -f ../logs/catalina.out