windows下監控程序的指令碼 批處理實
阿新 • • 發佈:2019-02-08
[轉載]windows下監控程序的指令碼
(2012-06-09 23:27:43) 轉載▼標籤:
轉載 |
需要了解如下幾個命令,tasklist +find,ping。tasklist是列出所有程序,可以指定只列出某使用者的程序,用/FI引數過濾。find/C可以去tasklist的結果中查詢指定程序名,並輸出個數。
還有個問題是如何設定每隔一段時間去檢測程序是否在執行,我用的是ping命令自帶的延遲引數-w,將IP地址設定成一個空地址,比如0.0.0.1,這樣該命令會一直ping,直到一定n*w毫秒後才返回(n和w分別是引數-n和-w指定的值)。
示例程式如下,紅色部分需要根據需求進行替換,enjoy it!
:RESTART
tasklist /FI "username eq bigtree
set /p num= < temp.txt
del /F temp.txt
echo %num%
if "%num%" == "0" start /D"E:Userbigtreeprogramcomparison"pos
ping -n 10 -w 2000 0.0.0.1> temp.txt
del /F temp.txt
goto RESTART
注意1:goto語句是將監控程式設定成死迴圈,哇咔咔。
注意2:可以用start /D pathprogram去非同步呼叫program程式,也就是不等program指定完畢就執行下面的語句,因此可以設定固定間隔(n*w毫秒)去監測。
如果用callprogram則是同步呼叫,會等待program執行完畢,這樣延遲就用不著了。