lefg 276 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 Mit & können Befehle in einer Zeile Verknüpft werden. for %%i in (192.168.135.151) do set ping=%%i & call :sendping for %%i in (192.168.135.152) do set ping=%%i & call :sendping pause :sendping for /f "tokens=3,5 skip=3" %%i in ('ping %ping%') do echo %%i %%j >> c:\ping.txt & goto :eof goto :eof Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 In der Liste der For-Schleife können mehrere Parameter stehen. for %%i in (192.168.135.151 192.168.135.152) do set ping=%%i & call :sendping pause :sendping for /f "tokens=3,5 skip=3" %%i in ('ping %ping%') do echo %%i %%j >> c:\ping.txt & goto :eof Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 Das kann auch so notiert werden. for %%i in (192.168.135.151 192.168.135.152) do set ping=%%i & call :sendping pause :sendping for /f "tokens=3,5 skip=3" %%i in ('ping %ping%') do echo %%i %%j >> c:\ping.txt & goto :eof Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 Auch so ist das möglich. for %%i in ( 192.168.135.151 192.168.135.152 ) do set ping=%%i & call :sendping pause :sendping for /f "tokens=3,5 skip=3" %%i in ('ping %ping%') do echo %%i %%j >> c:\ping.txt & goto :eof Zitieren Link zu diesem Kommentar
fresch_heit2000 10 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 beeinduckend ;) Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 Soll ich weitermachen? Ich möchte hier nicht angeben. :) Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 Schreiben wir doch die zu bearbeitenden Adressen in eine Datei Pingsource.txt und werten diese mittels Textiteration aus. for /f %%i in (c:\pingsource.txt) do echo %%i pause Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 Und übergeben die Adressen aus Pingsource an die Variable %ping%. for /f %%i in (c:\pingsource.txt) do set ping=%%i & call :sendping pause :sendping for /f "tokens=3,5 skip=3" %%i in ('ping %ping%') do echo %%i %%j >> c:\ping.txt & goto :eof goto :eof Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 Wie sieht das Ergebnis von Ping bei nicht Erreichbarkeit aus? Ping wird ausgeführt für 192.168.135.160 mit 32 Bytes Daten: Zeitüberschreitung der Anforderung. Zeitüberschreitung der Anforderung. Zeitüberschreitung der Anforderung. Zeitüberschreitung der Anforderung. Ping-Statistik für 192.168.135.160: Pakete: Gesendet = 4, Empfangen = 0, Verloren = 4 (100% Verlust), Ca. Zeitangaben in Millisek.: Minimum = 0ms, Maximum = 0ms, Mittelwert = 0ms Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 Nach dem Abarbeiten der Liste sieht es so aus. 192.168.135.151: Zeit<10ms 192.168.135.152: Zeit<10ms Anforderung. Der Term "Anforderung." stammt aus Token 3. Token 1 enthält "Zeitüberschreitung". Was wollen wir auswertern? Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 Eingeführt werden tokens=1,3,5 und %%i %%j %%k. for /f %%i in (c:\pingsource.txt) do set ping=%%i & call :sendping pause :sendping for /f "tokens=1,3,5 skip=3" %%i in ('ping %ping%') do echo %%i %%j %%k>> c:\ping.txt & goto :eof goto :eof Dann sieht das Ergebnis so aus: Antwort 192.168.135.151: Zeit<10ms Antwort 192.168.135.152: Zeit<10ms Zeitberschreitung Anforderung. Nach dem Punkt von Anforderung steht aus Token 5 ein hier nicht darstellbares Zeichen. Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 Die Subroutine Sendping kann wie folgt formuliert werden: for /f %%i in (c:\pingsource.txt) do set ping=%%i & call :sendping pause :sendping for /f "tokens=1,3,5 skip=3" %%i in ('ping %ping%') do ( echo %%i %%j %%k>> c:\ping.txt goto :eof ) Echo und Goto sind getrennte Befehle. Mögliche wird das durch Klammerung. Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 Hier eine Reaktionsmöglichkeit bei Antwort mit einer Vergeichsoperation rem @echo off for /f %%i in (c:\pingsource.txt) do set ping=%%i & call :sendping pause :sendping for /f "tokens=1,3,5 skip=3" %%i in ('ping %ping%') do ( echo %%i if %%i==Antwort net send r202-lefgruen %ping% exist goto :eof ) Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 Hier der Vergleich mit Zeitberschreitung rem @echo off for /f %%i in (c:\pingsource.txt) do set ping=%%i & call :sendping pause :sendping for /f "tokens=1,3,5 skip=3" %%i in ('ping %ping%') do ( if %%i==Zeitberschreitung net send r202-lefgruen %ping% not exist goto :eof ) Das Echo %%i habe ich rausgenommen. Es diente nur der Verifizierung. Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 19. Oktober 2004 Melden Teilen Geschrieben 19. Oktober 2004 Ich glaube, das war es. Ein kleines "einfaches" Script. :) Schönen Abend noch allerseits. Ich schau noch mal nach der Datensicherung und mache dann Feierabend. Edgar Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.