windows守护tomcat的bat批处理脚本

我们两清 提交于 2019-12-01 18:44:49

通过判断8080端口是否有进程在监听来启动tomcat

:RESTART
netstat -an | find /C "0.0.0.0:8080" > temp.txt
set /p num=<temp.txt
del /F temp.txt

if %num%==0 start /D "C:\utils\apache-tomcat-7.0.65\bin\" startup.bat

echo Wscript.Sleep WScript.Arguments(0) >sleep.vbs
cscript //b //nologo sleep.vbs 5000
goto RESTART

通过判断是否有Java进程在来启动tomcat,如果有多个Java程序可能会不准确

netstat -an | find /C "0.0.0.0:8080" > temp.txt

替换为

tasklist | find /C "java.exe" > temp.txt

可以增加进程的启动用户来增加进程判断的准确性

tasklist /FI "username eq administrator" | find /C "java.exe" > temp.txt

该脚本运行后会出现一个dos窗口,若觉得碍眼可以用记事本将下面保存为扩展名为.vbs的文件。其中guard.bat是上面批处理保存的文件名。两个文件放在同一目录下双击vbs文件后,守护进程就在后台运行了,但这样得通过资源管理器结束cmd进程才能停止守护进程。 最后的0代表隐藏窗口

set ws=WScript.CreateObject("WScript.Shell") ws.Run "guard.bat",0
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!