Linux下批量停止、启动tomcat的方法
因项目需要,一个系统下,需要部署多个tomcat,有时在部署时,反复停止、启动tomcat很累人,而且效率极慢,为了节约时间,记录下如何快速停止、启动多个tomcat
1、Linux下批量停止多个tomcat
ps aux |grep tomcat |grep -v grep |awk '{print $2}' |xargs kill -9
注意:此命令会把系统所有tomcat全部署干掉,使用时,小心误伤!2、Linux下批量启动多个tomcat
说明:我的tomcat是部署在/data/tomcat/tomcat{8080..8082}
/data
└── tomcat
├── start_tomcat.sh
├── tomcat_8080
├── tomcat_8081
└── tomcat_8082
通过下面shell脚本,来批量启动tomcat,把这些小猫猫全部拉起来。
#!/bin/bash
#JDK路径
export JAVA_HOME="/usr/lib/jvm/java8"
#前缀路径
PREFIX="/data/tomcat/tomcat_"
#起始编号
BEGIN=8080
#终止编号
END=8082
#关闭
stop(){
for((i=$BEGIN;i<=$END;i++))
do
#抽取Tomcat进程号PID
pid=`ps -ef | grep tomcat$i |grep -v 'grep' | awk '{print $2}'`
#测试当前进程是否处于活动状态
test "$pid" != "" && kill $pid && echo "Stop Tomcat$i Successful!" || echo "Stop Tomcat$i Failed!"
done
echo
}
#启动
start(){
for((i=$BEGIN;i<=$END;i++))
do
#启动Tomcat
$PREFIX$i/bin/startup.sh && echo "Start Tomcat$i Successful!"
echo
done
}
#状态
status(){
for((i=$BEGIN;i<=$END;i++))
do
#抽取Tomcat进程号PID
pid=`ps -ef | grep tomcat$i |grep -v 'grep' | awk '{print $2}'`
#打印PID
echo "Tomcat$i - $pid"
done
}
case "$1" in
start)
echo "Start Tomcat$BEGIN ~ Tomcat$END"
echo
start
echo
;;
stop)
echo "Stop Tomcat$BEGIN ~ Tomcat$END"
echo
stop
echo
;;
restart)
echo "Restart Tomcat$BEGIN ~ Tomcat$END"
echo
stop
start
echo
;;
status)
echo "Pid of Tomcat$BEGIN ~ Tomcat$END"
status
echo
;;
*)
echo $"Usage: $0 {start|stop|restart|status}"
exit 1
;;
esac
编写完上面的脚本后,保存退出,给权限,然后执行启动
# chmod 755 start_tomcat.sh
# ./start_tomcat.sh start
Start Tomcat8080 ~ Tomcat8082
Using CATALINA_BASE: /data/tomcat/tomcat_8080
Using CATALINA_HOME: /data/tomcat/tomcat_8080
Using CATALINA_TMPDIR: /data/tomcat/tomcat_8080/temp
Using JRE_HOME: /usr/lib/jvm/java8/jre
Using CLASSPATH: /data/tomcat/tomcat_8080/bin/bootstrap.jar:/data/tomcat/tomcat_8080/bin/tomcat-juli.jar
Tomcat started.
Start Tomcat8080 Successful!
Using CATALINA_BASE: /data/tomcat/tomcat_8081
Using CATALINA_HOME: /data/tomcat/tomcat_8081
Using CATALINA_TMPDIR: /data/tomcat/tomcat_8081/temp
Using JRE_HOME: /usr/lib/jvm/java8/jre
Using CLASSPATH: /data/tomcat/tomcat_8081/bin/bootstrap.jar:/data/tomcat/tomcat_8081/bin/tomcat-juli.jar
Tomcat started.
Start Tomcat8081 Successful!
Using CATALINA_BASE: /data/tomcat/tomcat_8082
Using CATALINA_HOME: /data/tomcat/tomcat_8082
Using CATALINA_TMPDIR: /data/tomcat/tomcat_8082/temp
Using JRE_HOME: /usr/lib/jvm/java8/jre
Using CLASSPATH: /data/tomcat/tomcat_8082/bin/bootstrap.jar:/data/tomcat/tomcat_8082/bin/tomcat-juli.jar
Tomcat started.
Start Tomcat8082 Successful!
然后浏览一下tomcat默认页面,打开全部正常,以上就为Linux下批量停止、启动tomcat的方法,以作备忘!
评论