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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
#!/bin/sh
if [ -z $ 1 ]
then
echo "\033[31;1mplease input the app which you need restart...\033[0m"
exit 1
fi
base_dir=/Users/huangyunxing/Documents/work/www
if [ ! -d ${base_dir}/$ 1 ]; then
echo -e "\033[31;1mcan't find the directory [${base_dir}/$1] or the [${base_dir}/$1] is no a directory, please check it...\033[0m"
exit 1
fi
if [ ! -f ${base_dir}/$ 1 /conf/server.xml ]; then
echo -e "\033[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...\033[0m"
exit 1
fi
if [ ! -d ${base_dir}/$ 1 /webapps ]; then
echo -e "\033[31;1mcan't find the directory [${base_dir}/$1/webapps] or the [${base_dir}/$1/webapps] is not a directory, please check it...\033[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 "\033[44;38;1mthe tomcat is not running, begin startup...\033[0m"
else
echo -e '\033[45;35;1mcurrent running pid is' $res ',begin to stopping...\033[0m'
kill - 9 `ps aux | grep $ 1 |grep "$JAVA_HOME/bin/java" |egrep -v "grep" |awk '{print $2}' ` && echo -e '\033[45;35;1mtomcat killed successfully\033[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 "\033[44;32;1mTomcat startup finished...\033[0m"
pid=`ps aux | grep $ 1 |grep "$JAVA_HOME/bin/java" |egrep -v "grep" |awk '{print $2}' `
echo -e "\033[46;38;1m new running pid is ${pid}...\033[0m"
|
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
原文链接:http://asflex.iteye.com/blog/2123816