如果你正在周而复始干服务器部署的话。下面写的一段shell 脚本应该还是可以有点收获的,还算是挺实用的
最近部署了第几次服务器,感觉写的有点郁闷,为啥老是写相同的东西呢,然后这个脚本就产生了。
实现思路
ps 显示进程,grep筛选进程,awk是一个强大的文本分析工具筛选出tomcat8的pid
kill掉tomcat的进程
gradle 自动编译打包成war包,如果使用maven则换maven的打包即可
更新你的代码,svn update 或者git pull 即可
最后在startup.sh 即可启动tomcat
最后的最后当然是crontab -e 写下你的定时任务了。然后你就可以愉快的写代码了。再也不用烦恼服务器部署的事了。
使用方法:
1. 相信了解linux的人都懂改的。
缺陷:
仍未实现的地方是,当编译错误,项目启动失败,没有发送邮件给你。这个是很大的弊端的,也就是没有错误检查了。
#!/bin/sh
TOMCAT=
'/mnt/service/apache-tomcat-8.0.37'
PROJECT=
'/mnt/project/ascmRedRain/redRainInterface'
echo "deploy redRainProject"
pidList=`ps -ef|grep apache-tomcat-8.0.37|grep -v
'grep'|awk
'{print $2'}`
if [
"$pidList" =
"" ];
then
echo "no tomcat pid alive"
else
echo "tomcat id list :$pidList"
kill -9
$pidList
echo "kill $pidList"
fi
echo "svn update and clean complier and package"
cd $PROJECT&&svn update&&gradle clean&&gradle war
rm -rf
$TOMCAT/webapps/redRainInterface.war && rm -rf
$TOMCAT/webapps/redRainInterface
echo "copy to tomcat webApps "
cp build/libs/redRainInterface.war
$TOMCAT/webapps/
echo "start tomcat ! Go Go Go!!!"
cd $TOMCAT && ./bin/startup.sh
本文永久更新链接地址: