之前没有接触过批处理命令,通过这次任务大致了解了下bat基本命令。
需求说明
tomcat 异常关闭后,需要自动重启服务。
脚本
- 通过netstat命令监听tomcat服务端口,如果端口没有被占用则启动tomcat服务
- 通过ping -n 5 127.0.0.1 延时
- 程序通过ver 命令区分windows 版本,设置CATALINA_HOME环境变量
@echo off
echo 监听tomcat异常关闭自动启动服务
:service
ping -n 5 127.0.0.1 > nul
set /a status = 0
netstat -an |find "8080" && set /a status = 1
if %status% equ 0 goto restart
if %status% equ 1 goto end
:restart
echo restart tomcat service ...
set "var=%CATALINA_HOME%"
if "%CATALINA_HOME%" neq "" goto callback
rem 设置tomcat根目录
set "var=F:\apache-tomcat-6.0.28"
rem 根据version判断系统
ver | findstr "6[.][0-9][.][0-9]*" > nul && goto win7
:xp
wmic ENVIRONMENT create name="CATALINA_HOME",username=