中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-12 11:04
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS批处理 & 脚本技术(批处理室) » for中怎样在符合条件的情况下跳出执行循环后的代码?
可打印版本  826 / 0
第1楼 antony521 发表于 2010-04-18 17:30
新手上路 发帖 14 积分 14
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%后面有个冒号,怎样在赋值时去掉?
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023