Board logo

标题: for中怎样在符合条件的情况下跳出执行循环后的代码? [打印本页]

作者: antony521     时间: 2010-4-18 17:30    标题: for中怎样在符合条件的情况下跳出执行循环后的代码?

@echo off
:ready
for /F "tokens=1,2* delims=:. " %%a in ('ipconfig/all') do (
if defined dns1 set dns2=%%a.%%b.%%c&goto 0
if /i "%%a %%b"=="Ethernet adapter" set NIC=%%c
if /i "%%a %%b"=="IP Address" set "ip=%%c"
if /i "%%a %%b"=="Default Gateway" set "gateway=%%c"
if /i "%%a %%b"=="DNS Servers" set "dns1=%%c")

:0
cls
echo\
echo   连接名称..: %NIC%
echo   当前IP....: %ip%
echo   网关......: %gateway%
echo   当前DNS...: %dns1%
echo   备用DNS...: %dns2%
pause>nul
:1
call ready
测试网络代码........
ping %ip% -n 2>nul&&通||不通
.....
现在问题是:
1、测试网络代码段不需要显示各变量,也就是不能用goto 0来跳出for循环,用exit也不行。
2、以上显示的%NIC%后面有个冒号,怎样在赋值时去掉?