標籤:bat
@echo off
color 1f
title 正在監控 www.0579ld.com.cn
echo 正在監控 www.0579ld.com.cn(23.247.53.3)..
:aaa
D:\curl\curl -I www.0579ld.com.cn>nul
set str=%ERRORLEVEL%
if not "%str%"=="0" (
echo 在%date% %time:~0,5% 無法正常訪問,重啟中...
:: cd c:\server\PnCmds
echo 正在關閉進程
tskill 複製俠
ping -n 2 127.0.0.1>nul
echo 正在啟動進程
start D:\777999\複製俠.exe
ping -n 2 127.0.0.1>nul
echo 在%date% %time:~0,5% 重啟成功
echo 正在監控www.0579ld.com.cn...
)
ping -n 10 127.0.0.1>nul
goto aaa
------------------------------------------------------------------------------
說明:
1、訪問檢測地址,該地址正常訪問的話返回1,例如在http://xxxx.com/checkxxxx.html這個html檔案中就唯寫個1
2、接收返回的頁面,儲存在check.txt
3、讀取check.txt內容,存放在變數str中
4、判斷str是否等於1,否則的話執行伺服器上用於重啟服務的指令碼,因指令碼會提示“按任意鍵繼續”,故call前面加上echo. | (注意echo後面有個點)
5、睡眠60秒後跳到aaa出重新檢測
注意:該指令碼依賴curl.exe,用於拿到http請求的頁面內容,可以到這裡下載https://curl.haxx.se/download.html
tasklist (列出系統所有正在啟動並執行進程)
tskill BaiduYunGuanjia (殺死“BaiduYunGuanjia”這個進程)
start D:\BaiduYunDownload\百度雲超級不限速召喚大神版\BaiduYunGuanjia.exe (啟動百度雲程式)
Windows 擷取上一條命令的傳回值。 一般情況下,命令執行正確,返回0, 命令異常,返回其他值。
命令:echo %ERRORLEVEL%
set a=%ERRORLEVEL%
echo %a%
@echo off
sc stop 服務名
sc config 服務名 start= Auto
sc start 服務名
bat curl 發送http請求 監控網站