ip.bat i problem z pętlą for

0

Witam, proszę o wyjaśnienie dla czego ten kod w pliku *.bat działa

@echo off

set ip=10
ipconfig | find /i "10.15.55.%ip%" > nul 
if %errorlevel% == 0 (echo ip address not found) else (echo ip address found)

a w pętli for, %errorlewel% wywala zawsze 0

@echo off

rem for /l %%p in (1,1,10) do (

    set ip=%%p
ipconfig | find /i "10.15.55.%ip%" > nul

if %errorlevel% == 0 (echo ip address not found) else (echo ip address found)

)

Proszę o wytłumaczenie co ma m źle.

0

Masz przestawione warunki, polecenie find ustawia errorlevel na 0 jak znajdzie. Poza tym zadanie nie jest zupełnie trywialne.

@echo off
setlocal enabledelayedexpansion
for /l %%p in (1,1,10) do (

ipconfig | find "192.168.1.%%p" > nul
if !errorlevel!==0 (echo ip address found) else (echo ip address not found)

)
0

Sprawdzam.......