以Python 进程监控为例,该进程为京东网站数据分布式爬取程序,实现windows下网络连接失败等其他原因造成的进程异常结束,实现进程重启;
脚本如下,将如下脚本赋值到文本文件,后缀名改为bat;直接在Powershell窗口运行即可;
:restart
set /A ProgramCntLevel=1
REM 进程数量赋值
for /F %%i in ('tasklist ^| findstr python ^| find /v /c ""') do (set ProgramCount=%%i)
if %ProgramCount% GEQ %ProgramCntLevel% (
REM 进程意外结束,等待重启
timeout /T 300 /NOBREAK
)
if %ProgramCount% LSS %ProgramCntLevel% (
REM 简单的Python程序为例,或者调用start命令将程序放置后台
python.exe begin.py
REM start /b python begin.py
)
goto restart
pause