先上代码:-
- for /f "tokens=1-4 delims= " %%i in (dd.txt) do (
- nslookup %%j|findstr "\<%%i\>"
- if %errorlevel% equ 0 (
- echo ok
- ) else (
- goto Alarm
- )
- )
- pause >nul
- :Alarm
- echo alarm
- pause
复制代码 文件dd.txt内容-
- 119.75.218.45 test.baidu.com
- 119.75.218.45 www.baidu.com
复制代码 执行后,%errorlevel% 始终是0,看到是先if,然后nslookup才出结果。而如果把if放到循环外面的话,那么所有循环完成后,只要有一个不符合,就报警,不是我想要的。
我想要的就是一次判断一行,只要有报警,就直接跳出循环体。
不知道要怎么改进,请教各位高手。多谢了。 |