@echo off
set Address=google.com
:Loop
PING -n 5 127.0.0.1>nul
echo Pinging %Address%
%SystemRoot%\system32\ping.exe -n 1 %Address% | %SystemRoot%\system32\find.exe "TTL=" > NUL >> C:\pingtest\logfile.log
if %ERRORLEVEL% EQU 0 goto :Loop
echo Trace route %Address% at %date% %time% >> C:\pingtest\logfile.log
tracert %Address% >> C:\pingtest\logfile.log
goto Loop
他の誰かがこれを必要とする場合、これは私が最終的に行ったものです。基本的に、「Ping -n 127.0.0.1>Nul」は、5 秒ごとに宛先に ping を送信するように 5 秒のカウンターを追加することです。5 は、必要な値に変更できます。
Windows 7 には、ping が「192.168.1.5 からの応答: 宛先ホストに到達できません」のような結果になるというこの問題があります。したがって、エラーを出す代わりに、エラー レベル 1 ではなく、それ自体から応答を取得します。エラー レベル 1 を探す代わりに、"%SystemRoot%\system32\ping.exe -n 1 %Address で TTL の結果がないことを探すことにしました。 % | %SystemRoot%\system32\find.exe "TTL=" > NUL"
とにかく、ここでの他の回答は非常に似ていて、うまくいった可能性があると確信しているので、ランク付けしていますが、これを回答としてマークしています。
皆さんありがとう!