1、mymonitor.bat
@echo off
setlocal
:: 设置要检查的端口号
set PORT=7500
set PORT2=7501
:: 设置要调用的重启服务脚本路径
set RESTART_SCRIPT=D:\myscript\start.bat
:: 标记端口是否正在被监听
set PORT_LISTENING=NO
set PORT_LISTENING1=0
set PORT_LISTENING2=0
:: 使用netstat检查端口
for /f "tokens=5" %%i in ('netstat -aon ^| findstr :%PORT%') do (
echo 11111
set "PID=%%i"
set PORT_LISTENING1=1
goto :check_done
)
:check_done
:: 使用netstat检查端口
for /f "tokens=5" %%i in ('netstat -aon ^| findstr :%PORT2%') do (
echo 11111
set "PID=%%i"
set PORT_LISTENING2=1
goto :check_done
)
:check_done
set /a sum=%PORT_LISTENING1%+%PORT_LISTENING2%
if "%sum%"=="2" (
echo "runing"
set PORT_LISTENING=YES
) else (
echo "%sum%"
echo "NOT RUNGING"
)
echo "%PORT_LISTENING%"
if "%PORT_LISTENING%"=="NO" (
echo start app
call "%RESTART_SCRIPT%"
if %errorlevel% equ 0 (
echo runing sucess
) else (
echo runing error
)
) else (
echo %PORT_LISTENING%
echo runing app alrealy
)
:end
pause
endlocal
2、start.bat
@echo off
echo Starting Nginx..
cd D:\cloudwalk\nginx-1.14.2
D:
start nginx.exe
echo Nginx has been started
echo Starting Nginx..
cd D:\cloudwalk\cert_spider\src
python server.py
echo Starting python server ..