tomcat创建bat启动,结合任务计划实现自动重启tomcat服务

1,创建XXX项目启动.bat,修改tomcat服务名以及日志地址

@echo off

:: 设置服务名(根据你的实际情况修改)

set SERVICE_NAME=Tomcat8

:: 日志文件路径(确保目录存在)

set LOG_FILE=D:\tomcat7\logs\restart.log

:: 获取当前时间

for /f "tokens=1-4 delims=/ " %%a in ('date /t') do (

for /f "tokens=1-3 delims=: " %%x in ('time /t') do (

set CURRENT_TIME=%%a %%b %%c %%x:%%y

)

)

:: 写入日志函数

echo [INFO] %CURRENT_TIME% - 开始执行重启任务 >> "%LOG_FILE%"

:: 查询服务状态

sc query "%SERVICE_NAME%" | findstr /i "RUNNING" >nul 2>&1

if %errorlevel% == 0 (

echo [INFO] %CURRENT_TIME% - 服务 %SERVICE_NAME% 正在运行,准备停止... >> "%LOG_FILE%"

net stop "%SERVICE_NAME%" >> "%LOG_FILE%" 2>&1

if %errorlevel% == 0 (

echo [INFO] %CURRENT_TIME% - 服务已成功停止 >> "%LOG_FILE%"

) else (

echo [ERROR] %CURRENT_TIME% - 停止服务失败,请检查! >> "%LOG_FILE%"

)

timeout /t 10 >nul

) else (

sc query "%SERVICE_NAME%" | findstr /i "STOPPED" >nul 2>&1

if %errorlevel% == 0 (

echo [INFO] %CURRENT_TIME% - 服务 %SERVICE_NAME% 已停止,跳过关闭步骤 >> "%LOG_FILE%"

) else (

echo [WARN] %CURRENT_TIME% - 服务 %SERVICE_NAME% 状态未知(可能未安装或禁用) >> "%LOG_FILE%"

)

)

:: 启动服务

sc query "%SERVICE_NAME%" | findstr /i "STOPPED" >nul 2>&1

if %errorlevel% == 0 (

echo [INFO] %CURRENT_TIME% - 正在启动服务 %SERVICE_NAME%... >> "%LOG_FILE%"

net start "%SERVICE_NAME%" >> "%LOG_FILE%" 2>&1

if %errorlevel% == 0 (

echo [INFO] %CURRENT_TIME% - 服务 %SERVICE_NAME% 启动成功 >> "%LOG_FILE%"

) else (

echo [ERROR] %CURRENT_TIME% - 启动服务失败,请检查服务配置 >> "%LOG_FILE%"

)

) else (

echo [INFO] %CURRENT_TIME% - 服务 %SERVICE_NAME% 已经在运行或状态异常,跳过启动 >> "%LOG_FILE%"

)

echo [DONE] %CURRENT_TIME% - 重启任务执行完毕 >> "%LOG_FILE%"

echo -------------------------------------------------- >> "%LOG_FILE%"

2,结合任务调度计划,实现定时重启tomcat,任务调度参考地址:

相关推荐
Joren的学习记录32 分钟前
【Linux运维大神系列】docker详解(四)
linux·运维·docker
Elastic 中国社区官方博客2 小时前
让我们把这个 expense 工具从 n8n 迁移到 Elastic One Workflow
大数据·运维·elasticsearch·搜索引擎·ai·信息可视化·全文检索
( •̀∀•́ )9202 小时前
GitHub Actions SSH 部署密钥
运维·ssh·github
louqle2 小时前
docker基本知识及常用命令汇总
运维·docker·容器
学烹饪的小胡桃3 小时前
【运维学习】实时性能监控工具 WGCLOUD v3.6.2 更新介绍
linux·运维·服务器·学习·工单系统
叫致寒吧3 小时前
Docker
运维·docker·容器
白露与泡影4 小时前
使用systemd,把服务装进 Linux 心脏里~
linux·运维·python
l1t4 小时前
用docker安装oracle 19c
运维·数据库·docker·oracle·容器
k***92165 小时前
【Linux】进程概念(五):详解环境变量的本质
linux·运维·服务器
专业开发者5 小时前
艾通科技(ITON Technology)借助蓝牙 ® 网状网络,构建适用于自动化控制应用的大规模设备网络
运维·物联网·自动化