[ Tomcat ] 自动更新脚本

之前总是要更新基于 Tomcat 的web项目,而且更新频繁。

手工更新太烦人了,遂写了一个半自动的脚本。已经快一年没接触 Tomcat ,脚本仅供参考 。

#!/bin/bash
# Author: Jeffery.Su
# Mail: [email protected]
# Site: http://suzf.net
# Date: Sep 10,2014
# Version: 1.0.2

# Definite variable
PRO_NAME=javacenter
WORK_PATH=/usr/local/tomcat/webapps
BACK_PATH=/opt/backup/${PRO_NAME}
UPLOAD_PATH=/root/$PRONAME
DATE=$(date ‘+%Y%m%d‘)
BACK_NAME="$PRO_NAME-$DATE.tar.gz"
#eval `date "+day=%d; month=%m; year=%Y"`
#BACK_NAME="$PRO_NAME-$year-$month-$day.tar.gz"

# Backup and Gzip the whole folder
[ -d $BACK_PATH ] || mkdir -p $BACK_PATH
cd $WORK_PATH
tar Ppzcf $BACK_PATH/$BACK_NAME $PRO_NAME
echo -e " $(date) Loading backup programmer, please waiting a moment....\n"
if [ $? -eq 0 ];then
echo -e " $(date) Backup the file succeed !\n"
else
echo -e " $(date) Backup the file failed ! please check !!!\n"
return 1;
fi

# Move the current webapps
mv $PRONAME/ $BACK_PATH/$BACK_NAME
rm -rvf $PRONAME.war

# Upload the new webapps
# Check the file complete upload
[ -d $UPLOAD_PATH ] || mkdir $UPLOAD_PATH
mv $UPLOAD_PATH/$PRO_NAME/* .
if [ "$?" == "0" ];then
echo "Please upload the webapps to $UPLOAD_PATH"
sleep 360;
fi

# Restart tomcat
echo -e " $(date) Stop tomcat\n"
../bin/shutdown.sh

i=0
while (($i <5)) do PID=`ps aux|grep tomcat |grep -v "grep\|sh"|awk ‘{print $2}‘` if [[ "$PID" == "" ]];then echo "$PID not exits , tomcat hava stop success" i=7 else echo "$PID is exits , tomcat is running" let "i++" sleep 7; echo "$(date) Forced to stop tomcat" # kill -9 $PID fi done echo -e "$(date) start tomcat\n" ../bin/startup.sh # Remove the old backups find $BACK_PATH -mtime +15 -exec rm -rf {}\; > /dev/null 2>&1

# Watch the log of catalina.out
#tailf ../logs/catalina.out
时间: 2024-10-07 13:43:03

[ Tomcat ] 自动更新脚本的相关文章

shell编写tomcat自动守护脚本

工作所需,匆匆忙忙写了个监控tomcat的shell脚本,大概思路是这样的:先检测tomcat进程是否存在,如果不存在就启动,如果进程存在,检测页面返回码状态,如果是200就是正常,如果不是就重启. #!/bin/sh # func:自动监控tomcat脚本并且执行重启操作# author:reed# date:12/09/2012 # 定义环境变量PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/jav

tomcat自动更新版本的脚本

脚本实现目的: 利用svn更新war包同时删除缓存. 彻底关闭tomcat,用指定用户启动tomcat. 考虑事项: 执行函数为:zzz01 tomcat路径为/usr/local 启动tomcat用户为www 注意xargs的使用 #!/bin/bash function zzz01(){ su- www -c "rm -rf /usr/local/tomcat_imp_stockRecord1/webapps/imp-stockRecord-web" su- www -c &quo

Linux架设DDNS服务器之自动更新脚本

问题描述:客户端是动态IP,每次连网之后要nsupdate下才可以把客户端的hostname 与IP映射更新到DNS Server上 命令如下: nsupdate -k K*****.key >server 192.*.*.* #dns server ip address >update delete yourfqdn A delete >update add yourFQDN 600 A your new IP 这样的效率实在是有点低,于是我就自己写个脚本来更新了.直接贴上我的脚本.脚

tomcat自动部署脚本

#!/bin/bash #defined now=`date +%Y%m%d%H%M%S` TOMCAT_HOME="/usr/tomcat7/apache-tomcat-7.0.70/" TOMCAT_PORT=8080 PROJECT="$1" BACKUP_DIR="/tomcat_back/$PROJECT/$now" #param validate; if [ $# -lt 1 ]; then echo "you must u

内网自动更新脚本

#!/usr/bin/expect set host "10.1.1.119" set pass "123.com" spawn /usr/bin/scp -r [email protected]$host:/home/update/ /var/cache/yum/ expect "password:" send "$pass\r" spawn /usr/bin/yum -y update interact #自己在机房装机的

Python自动更新脚本

本脚本主要针对python2.6升级至python2.10,并且解决了升级后不能使用yum的问题.添加了ipython功能 ##########################!/bin/bashpath="/home/tools"if [ ! -d $path ];thenmkdir $pathelserm -rf $path && mkdir $pathfi cd $path yum -y install automake gcc gcc-c++ readline-

实用脚本----Linux下Jdk和Tomcat自动安装shell脚本总结

系统环境为:ubuntu 14.04 一.JDK 自动安装脚本 jdk自动安装bash shell脚本,截止今天(2014/10/15)亲测可用: sudo su #切换到root权限 mkdir /usr/local/java cd /usr/local/java #download jdk 1.7.67 wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-co

关于cocos2dx客户端程序的自动更新解决方案

转载请注明出处:帘卷西风的专栏(http://blog.csdn.net/ljxfblog) 随着手机游戏的不断发展,游戏包也越来越大,手机网络游戏已经超过100M了,对于玩家来说,如果每次更新都要重新下载,那简直是灾难.而且如果上IOS平台,每次重新发包都要审核,劳神费力.所以当前的主流手游都开始提供自动更新的功能,在不改动C++代码的前提下,使用lua或者js进行业务逻辑开发,然后自动更新脚本和资源,方便玩家也方便研发者. 以前做端游的时候,自动更新是一个大工程,不仅要能更新资源和脚本,还要

禁用win7自动更新功能bat

把下面的内容拷贝到bat文件中执行即可: @echo off color 0a echo. echo. echo       ***********无限讯奇苏州************* echo       *                                  * echo       *     关闭win7自动更新脚本         * echo       *    不是病毒程序,请放心使用.    * echo               *    如果杀毒软件报毒,