マシン(SiteName.txtに格納されている)を連続してpingするスクリプトがあります。マシンがオンラインになると、カウンタが増分され、マシンがリストから削除され、もう一度pingを実行します(マシンがオンラインになっているかどうかを知る必要があります。ping結果をフィルタリングするバッチファイル
私が気付いている問題は、構築されたサイトのIPアドレスがいくつか存在していることに気がつきました。(そのIPはもう別のマシンによって引き継がれていません)偽陽性。
私の現在のコードは次のとおりです。
@echo off & setlocal EnableDelayedExpansion
TITLE %~n0
set /a counteron=0
for /F %%a in (%~n0.txt) do set "NVC=!NVC! %%a"
:ping
ping -n 61 127.0.0.1>nul
for %%i in (%NVC%) do (
ping %%i -n 1 | find "TTL=" >nul
if !errorlevel! GEQ 1 (
echo %%i is offline.
) else (
set /a counteron+=1
echo %%i is online
set "NVC=!NVC: %%i=!"
)
)
echo.
cls
echo. %counteron% machines are online.
if defined NVC goto :ping
cls
echo All machines in %~n0 are online.
pause
は同じことを行うことが可能にされていますが、IPの最初の3つのオクテットは、特定のセット(10.79.208.xxx)と一致した場合、それはまだとして起動しますオフライン?
おそらく、事前
まさに私が必要としたものです。ありがとうございました。 –