環境: 一台伺服器上用了portmap做了埠**,但是這個程式經常會跪,需要人工去重啟
解決思路:
通過bat來監控程式埠,不通時候自動重啟,如果埠可用,則會出來telnet程序,若埠不可用,則不會出現telnet程序。根據程序是否存在來判斷埠是否可用,因為telnet通的話,會直接跳轉視窗,無回顯,所以需要telnet時候啟用新視窗。
方法二
@echo off方法二title portmap存活監控!!!
:again
set ip=127.0.0.1
set port=8080
start telnet.exe %ip% %port%
ping -7 127.0.0.1 > null
tasklist|findstr /i "telnet.exe" > nul
if errorlevel 1 (goto err) else (goto ok)
:err
tasklist|findstr -i "portmap.exe"
if errorlevel 1 (start "" "d:\portmap1.6\portmap.exe") else (taskkill /f -im portmap.exe & start "" "d:\portmap1.6\portmap.exe")
:oktaskkill /f -im "telnet.exe" >> nul
echo portmap services is running %date:~0,4%-%date:~5,2%-%date:~8,2% %time:~0,2%:%time:~3,2%
ping -n 300 127.0.0.1 >nul
goto again
@echo offtitle portmap存活監控!!!
:again
set ip=127.0.0.1
set port=8080
netstat -ano|findstr %ip%:%port%|findstr -i established
if errorlevel 1 (goto err) else (goto ok)
:err
tasklist|findstr -i "portmap.exe"
if errorlevel 1 (start "" "d:\portmap1.6\portmap.exe") else (taskkill /f -im portmap.exe & start "" "d:\portmap1.6\portmap.exe")
:okecho portmap services is running %date:~0,4%-%date:~5,2%-%date:~8,2% %time:~0,2%:%time:~3,2%
ping -n 300 127.0.0.1 >nul
goto again
windows系統下的bat守護指令碼
win10系統下測試,經常出現測試程序自動關閉的情況,這時候可以執行乙個守護程序,如果測試程序關閉就重啟程序,記錄 方便備用。迴圈檢查php cgi.exe程序是否存在,如果不存在就新開視窗,重新啟動。echo off begin 查詢程序php cgi.exe tasklist find i ph...
Windows批處理BAT指令碼
2 echo和 字元放在命令前將關閉命令回顯,無論是否為開啟狀態。開啟或關閉回顯 echo 輸出資訊 echo string 3 pause 玩遊戲的都知道,暫停的意思。顯示其他提示語 echo string pause nul 4 errorlevel 返回程式碼 echo errorlevel ...
Windows程式打包指令碼 bat
打包指令碼的流程和自動打包基本相同 1.編譯軟體 2.拷貝需要的內容 3.簽名 4.打包成安裝檔案 5.再次簽名,並將安裝檔案名稱改成需要的格式 編譯軟體需要初始化vs的執行環境,如 call d program files x86 microsoft visual studio 12.0 vc b...