本文共 1666 字,大约阅读时间需要 5 分钟。
Tomcat自带只有startup.bat和shutdown.bat实现启动、关闭功能,每次重启要点2次比较麻烦,于是想写一个重启脚本。
刚开始在批处理脚本内容简单写了如下:
call shutdown.bat
call startup.bat
试了几次,也把call换成start等,也有问题,因为关闭和启动需求一些时间,有可能shutdown.bat还没执行完,又执行startup.bat。
后来搜索了下,找到这遍文章:https://zhangge.net/378.html
----------------------------------------------------------------------------------------------
Tomcat重启脚本,送给有需要的JSP环境运维同行们~
运行环境:XP/windows 2003测试通过,其他环境由于手头上条件限制未测试; 脚本功能:在常规调用tomcat自带的关闭/重启脚本中加入假死判断,若出现假死则予以强行Kill掉相关JAVA进程; 脚本特点:可在tomcat/Jboss/apache混合平台使用,针对性的只重启tomcat相关进程; 注意事项:就是注意tomcat环境变量是否正确即可。@echo offtitle Tomcat重啟脚本call"%tomcat_home%\bin\shutdown.bat"ping -n6 127.1>nulwmicprocess wherename="java.exe"get processid,commandline|findstr/i "tomcat" ># setlocal enabledelayedexpansionfor/f "delims=*"%%iin (#)do ( setvar=%%i setvar=!var:start =#! for/f "tokens=2 delims=#"%%ain ("!var!")do ( settomcatpid=%%a ))del # >nul ifdefined tomcatpidtaskkill /pid!tomcatpid!ping -n3 127.1>nulcall"%tomcat_home%\bin\startup.bat"exit----------------------------------------------------------------------------------------------
由于我电脑没配%tomcat_home%变量,所以我稍微修改了下,先cd定位到Tomcat的bin目录:
@echo offcd /d "D:\javatool\apache-tomcat\bin"title Tomcat重啟脚本call "shutdown.bat"ping -n 6 127.1 >nulwmic process where name="java.exe" get processid,commandline |findstr /i "tomcat" ># setlocal enabledelayedexpansionfor /f "delims=*" %%i in (#) do ( set var=%%i set var=!var:start =#! for /f "tokens=2 delims=#" %%a in ("!var!") do ( set tomcatpid=%%a ))del # >nul if defined tomcatpid taskkill /pid !tomcatpid!ping -n 3 127.1 >nulcall "startup.bat"exit测试成功,能正常重启Tomcat。
转载地址:http://alzrf.baihongyu.com/