檢測程式是否退出的bat指令碼

2022-05-05 13:48:08 字數 673 閱讀 9386

網上蕩了乙個指令碼,修改了一把

@echo off   

set _processcmd=c:\users\zhengchuangjian\desktop\流**\server\dispatcher.exe

set _processtimeout=10

set program="dispatcher.exe"

:loop

tasklist -v | findstr %program% > nul

if errorlevel 1 (

echo "程序不存在"

start %_processcmd%

) else (

echo "程序存在"

) choice /d y /t %_processtimeout% > nul

goto loop

這個指令碼有侷限性!

侷限性:只針對閃退,在程序列表裡面沒有這個程序存在的情況

不能檢測:如果奔潰,彈出乙個對話方塊,等待選擇,這種情況雖然奔潰,可是程序列表裡面還存在程序,所以檢測不到,不過可以有個思路,就是程序列表裡面雖然還存在程序,可是它沒有動作了,可以根據程式存活的特徵來檢測(如:心跳,網口繫結,cpu佔用率)

先研究一把,寫乙個準確**的指令碼,把殘留奔潰程序清除,重新啟動

bat指令碼自動退出問題

用bat寫一些指令碼時,總是會遇到cmd自動退出的問題 cmd跑到盡頭,他就自動退出了,消失了,這本來也是正常。但是,我們有時候需要看一些日誌資訊,看看跑得正不正常。他這時候直接消失了,那不是很煩躁。所以需要在cmd的最後加乙個pause,他就會暫停下來啦 有時候呼叫一些第三方bin的api或者服務...

利用BAT指令碼加入域和退出域

加入域的指令碼 echo off netdom join computername domain test.com userd user passwordd pass reboot 5 退出域的指令碼 echo off netdom remove computername domain test.c...

windows下bat,檢測程序是否開啟,並啟動

1 goto命令執行迴圈 2 tasklist findstr i mysqld.exe 檢測程序是否存在 3 start d a wnmps webserver mysql bin mysqld.exe 執行命令,後面的第乙個 用來允許第二個 中有空格 4 執行不同目錄下的bat,兩步 1.先 c...