tomcat的重启shell脚本

本文介绍了一款用于简化Tomcat服务器重启流程的Shell脚本。该脚本能够自动停止运行中的Tomcat进程,并清理缓存文件后重新启动Tomcat,大大提高了性能测试过程中的效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近做性能测试,每次测试完成都要重启tomcat,索引很麻烦,为此写了一个简单的shell脚本

#!/bin/sh
#kill tomcat pid
pidlist=`ps -ef|grep tomcat_message_8002|grep -v "grep"|awk '{print $2}'`


if [ "$pidlist" = "" ]
then
echo "no tomcat pid alive!"
else
echo "tomcat Id list :$pidlist"
kill -9 $pidlist
echo "KILL $pidlist:"
echo "service stop success"
fi
echo "start tomcat"


cd /home/app/tomcat_message_8002


rm -rf work/*


cd bin


./startup.sh ;tail -f ../logs/catalina.out
~
~
<think>我们参考用户提供的引用内容,特别是引用[1]和引用[2]中的示例,来编写一个重启TomcatShell脚本。注意:用户要求寻找一个在Linux系统下重启TomcatShell脚本。我们将结合引用中的示例,编写一个健壮的重启脚本脚本思路:1.设置Tomcat的安装目录(TOMCAT_HOME)2.停止Tomcat:执行shutdown.sh3.等待一段时间,确保Tomcat停止4.检查Tomcat进程是否还在,如果还在则尝试强制杀死(可选)或者报错退出5.启动Tomcat:执行startup.sh6.等待一段时间,检查Tomcat是否成功启动我们将参考引用[1]中的示例,并做一些改进:-增加进程检查的逻辑,确保在停止后进程确实被终止。-在启动后检查进程是否启动成功。同时,我们参考引用[2]中的示例,考虑在重启前可能做一些操作(如替换配置文件),但用户当前需求只是重启,因此我们可以先提供一个基础的重启脚本,然后如果需要额外的操作(如替换文件),可以提示用户进行扩展。注意:不同的环境可能需要调整,比如进程查找的方式,等待时间等。下面是一个示例脚本:</think>### Linux 系统下重启 TomcatShell 脚本示例 以下是一个健壮的重启 TomcatShell 脚本,包含错误检测和进程管理功能: ```bash #!/bin/bash # Tomcat 重启脚本 # 设置 Tomcat 安装目录(请根据实际路径修改) TOMCAT_HOME="/usr/local/tomcat/apache-tomcat-9.0.68" # 函数:检查 Tomcat 进程状态 check_tomcat_process() { PID=$(ps -ef | grep "$TOMCAT_HOME" | grep -v grep | awk '{print $2}') if [ -n "$PID" ]; then echo "Tomcat 进程运行中 (PID: $PID)" return 0 else echo "Tomcat 进程未运行" return 1 fi } # 停止 Tomcat echo "▸ 正在停止 Tomcat..." $TOMCAT_HOME/bin/shutdown.sh >/dev/null 2>&1 # 等待停止完成(最多 30 秒) TIMEOUT=30 while check_tomcat_process && [ $TIMEOUT -gt 0 ]; do sleep 1 ((TIMEOUT--)) done # 强制终止进程(如果正常停止失败) if check_tomcat_process; then echo "▸ 正常停止失败,尝试强制终止进程..." kill -9 $PID sleep 3 fi # 启动 Tomcat echo "▸ 正在启动 Tomcat..." $TOMCAT_HOME/bin/startup.sh >/dev/null 2>&1 # 检查启动状态 sleep 5 if check_tomcat_process; then echo "✓ Tomcat 重启成功 (新 PID: $PID)" exit 0 else echo "✗ Tomcat 启动失败,请检查日志:$TOMCAT_HOME/logs/catalina.out" exit 1 fi ``` #### 使用说明: 1. **修改路径**:将 `TOMCAT_HOME` 的值替换为您的实际 Tomcat 安装路径 2. **权限设置**:执行前需赋予脚本执行权限 ```bash chmod +x restart_tomcat.sh ``` 3. **执行脚本**: ```bash ./restart_tomcat.sh ``` #### 关键功能说明: 1. **进程检测**:通过 `ps -ef | grep` 精确识别 Tomcat 进程[^1] 2. **双重停止机制**: - 先尝试正常停止 (`shutdown.sh`) - 超时后强制终止进程 (`kill -9`)[^2] 3. **状态反馈**: - 成功时显示新进程 ID - 失败时提示检查日志文件 4. **超时控制**:设置 30 秒停止超时限制,避免无限等待 #### 日志检查建议: 若启动失败,可检查以下日志: ```bash tail -100 $TOMCAT_HOME/logs/catalina.out ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值