编写tomcat管理脚本

tomcat自带的catalina.sh可以执行启动,停止,查看版本,检查脚本语法错误等操作,但是用起来不太习惯,可以写一个管理tomcat服务的脚本。

一、相关脚本

tomcat服务管理脚本存放目录为/usr/local/tomcat/bin
image-20210713142701279

常用的有如下几个
configtest.sh:检查配置文件语法是否正确
startup.sh:启动tomcat服务
shutdown.sh:关闭tomcat服务
catalina.sh:自带的tomcat管理脚本

image-20210713142911432

其中run选项可以在前端输出tomcat启动信息,可用于排错

二、编写管理脚本

1、找到jdk路径
因为shell脚本运行会产生子shell,会找不到jdk,需要将该路径导入为环境变量

$ which java
/usr/local/jdk/jdk1.8.0_221/bin/java

2、编辑catalina.sh脚本文件自动生成tomcat.pid文件
启动tomcat自动生成tomcat.pid文件可用于判断tomcat服务是否启动

$ vim /usr/local/tomcat9/bin/catalina.sh

image-20210713145305304

3、脚本如下

$ vim /etc/init.d/tomcat
#!/bin/bash
#因为shell脚本运行会产生子shell,会找不到jdk,需要导入jdk的路径为环境变量
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_221/
TOMCAT_BIN=/usr/local/tomcat/bin

start(){
	$TOMCAT_BIN/startup.sh
}

stop(){
	$TOMCAT_BIN/shutdown.sh
}

restart(){
	stop
	start
}

check(){
	$TOMCAT_BIN/configtest.sh
}

status(){
	if [ -f '/usr/local/tomcat9/tomcat.pid' ];then
		echo 'tomcat is running!'
	else
		echo 'tomcat is stop!'
	fi
}

case "$1" in
	start)
		start;;
	stop)
		stop;;
	restart)
		restart;;
	configtest)
		configtest;;
	status)
		status;;
	*)
		echo "{start|stop|restart|check|status}"
esac

$ chmod +x /etc/init.d/tomcat

4、脚本使用
启动脚本可以看到生成了tomcat.pid,里面为tomcat的进程号
image-20210713145946475

参考资料
黑马linux\day12_企业架构之Tomcat部署使用

posted @ 2021-07-13 16:18  努力吧阿团  阅读(184)  评论(0)    收藏  举报