Ich fragte gestern über das Ändern der Farbe in der Eingabeaufforderung basierend auf einem Ping-Ergebnis. Ein Benutzer war so nett, mir das folgende Skript zu liefern.Ändern Sie die Farbe in der Eingabeaufforderung basierend auf Ping-Ergebnis?
Das Skript funktioniert gut bis auf ein Problem. Wenn die Verbindung abläuft, wird nichts unternommen. Es macht nur eine Art Pause. Wie würde ich dieses Skript aktualisieren, um eine Variable oder etwas hinzuzufügen, die den Text auch ändert, wenn ein Timeout gemeldet wird?
@setlocal enableextensions enabledelayedexpansion
@echo off
set /p ipaddr="Enter ip or url: eg localhost or google.co.za or 192.168.0.1"
set /p cutoff="enter minimum good reply ms: eg 300 "
:loop
for /f "tokens=7,9" %%a in ('ping -n 1 !ipaddr!') do (
if "%%a"=="Average" (
set a=%%b
set /a res=!a:~0,-2!
)
)
if %res% LEQ %cutoff% (
COLOR 2
echo %ipaddr% responded in %res%ms
)else (
COLOR 4
echo %ipaddr% responded in %res%ms
)
ping -n 3 127.0.0.1 >nul: 2>nul:
goto :loop
endlocal
Mögliches Duplikat von [Farbe in Eingabeaufforderung ändern basierend auf Ergebnis?] (Https://stackoverflow.com/questions/37148086/change-color-in-command-prompt-based-on-result) –