Witam wszystkich. Chciałem sobie zrobić w batchu programik pingujący dany przedział IP i zapisujący adresy IP które odpowiedziały do odpowiedniego loga. Po dłuższym głowieniu się wyszło mi coś takiego:
Kod:
FOR /L %%i IN (1,1,255) DO (
SET IP=217.75.58.%%i
ping -n 1 -w 500 %IP%
IF %errorlevel% EQU 1 goto end
IF %errorlevel% EQU 0 goto tak
:tak
echo ------%time%------komputer %IP% odpowiedzial >> c:\pingowanie.txt
goto end
:end
)
Ale oczywiście to nie działa jak trzeba
Pingowanie napewno nie trwa 500ms tylko znacznie krócej przelatuje, a odpowiedź zwrócona w logu wygląda tak:
Kod:
------14:44:28,53------komputer 217.75.58.1 odpowiedzial
------14:44:34,01------komputer 217.75.58.1 odpowiedzial
------14:46:01,28------komputer 217.75.58.1 odpowiedzial
------14:48:22,04------komputer 217.75.58.1 odpowiedzial
------14:48:54,68------komputer 217.75.58.1 odpowiedzial
Więc coś się powaliło ze zmienną %IP%, bo mi chyba powinno różne adresy zwracać...
Mógłby mi ktoś pomóc poprawić ten program, żeby dobrze chodził?