Linux 单个tomcat多实例部署shell脚本详解

Linux 单个tomcat多实例部署shell脚本详解

步骤:

1. 下载tomcat,解压安装

2.将tomcat下的webapps,conf,temp等目录分别拷至根目录www下A,B,C目录下

3.新建如下脚本restart_tomcat.sh

4.使用restart_tomcat.sh A/B/C

  #!/bin/sh        if [ -z $1 ]    then     echo "33[31;1mplease input the app which you need restart...33[0m"     exit 1    fi        base_dir=/Users/huangyunxing/Documents/work/www    if [ ! -d ${base_dir}/$1 ]; then      echo -e "33[31;1mcan't find the directory [${base_dir}/$1] or the [${base_dir}/$1] is no a directory, please check it...33[0m"      exit 1    fi        if [ ! -f ${base_dir}/$1/conf/server.xml ]; then      echo -e "33[31;1mcan't find the file [${base_dir}/$1/conf/server.xml] or the [${base_dir}/$1/conf/server.xml] is not a file, please check it...33[0m"      exit 1    fi        if [ ! -d ${base_dir}/$1/webapps ]; then      echo -e "33[31;1mcan't find the directory [${base_dir}/$1/webapps] or the [${base_dir}/$1/webapps] is not a directory, please check it...33[0m"      exit 1    fi       export CATALINA_BASE=${base_dir}/$1       if [ -f ${CATALINA_BASE}/setenv.sh ];then     . "${CATALINA_BASE}/setenv.sh"     echo "=========load setenv.sh finshed========"    fi       res=`ps aux | grep $1|grep "$JAVA_HOME/bin/java"|egrep -v "grep"|awk '{print $2}'`   if [ "$res" == "" ]; then      echo -e "33[44;38;1mthe tomcat is not running, begin startup...33[0m"    else     echo -e '33[45;35;1mcurrent running pid is' $res',begin to stopping...33[0m'    kill -9 `ps aux | grep $1|grep "$JAVA_HOME/bin/java"|egrep -v "grep"|awk '{print $2}'` && echo -e '33[45;35;1mtomcat killed successfully33[0m'   fi              rm -fr $CATALINA_BASE/work/*   rm -fr $CATALINA_BASE/temp/*   ${CATALINA_HOME}/bin/catalina.sh jpda start -config ${base_dir}/$1/conf/server.xml && echo -e "33[44;32;1mTomcat startup finished...33[0m"    pid=`ps aux | grep $1|grep "$JAVA_HOME/bin/java"|egrep -v "grep"|awk '{print $2}'`    echo -e "33[46;38;1m new running pid is ${pid}...33[0m"    

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

参与评论