中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-07 23:25
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 利用“IF“镶嵌语句的实例: 查看 1,088 回复 3
楼 主 利用“IF“镶嵌语句的实例: 发表于 2008-03-15 04:04 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
  同”FOR“一样”IF“也存在“IF“镶嵌语句,下面这段网络拼测命令就是利用的”IF“的镶嵌(注:192.168.1.1是网关IP地址,192.168.1.8是本机IP地址)
@echo off&cls
ping /n 1 www.cn-dos.net >nul
if errorlevel 1 (
ping /n 1 192.168.1.1 >nul
if errorlevel 1 (
ping /n 1 192.168.1.8 >nul
if errorlevel 1 (
  echo 网卡不通,请检查网卡
) else (
echo 网卡正常,网关不通,请检查网关
         )
) else (
echo 网卡正常,网关通畅,请检查外网连接
         )
) else (
echo 网络通畅
   )&pause goto :eof
  这段命令是对外网、网关、本机网卡依次进行拼测,然后根据拼测结果来判断网络状况并输出显示。由于拼测网卡、网关中、外网中存在三个拼的返回值(注:当拼不通时,errorlevel为1而拼通时errorlevel为0),为了判断网络终究是在哪个环节中断的,也就是返回值1是在什么环节出现的,而利用了”IF“的镶嵌语句来起到多次判断的作用。    

[ Last edited by zw19750516 on 2008-3-15 at 04:18 AM ]
2 发表于 2008-03-15 07:08 ·  中国 上海 联通
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
编程风格很有个性,呵呵。
3 发表于 2008-04-23 09:27 ·  中国 福建 厦门 同安区 电信
新手上路
积分 12
发帖 4
注册 2007-11-22 20:45
18年会员
UID 103456
性别 男
状态 离线
问个问题啊
我要执行局域网中的某个文件
检测不到那个文件要转跳下个文件执行。如何做呢
\\server\123\1.exe
如果没有
则执行
\\server\123\2.exe
4 发表于 2008-04-23 09:55 ·  中国 江苏 苏州 移动
银牌会员
★★★
积分 1,608
发帖 780
注册 2007-10-07 10:19
18年会员
UID 99089
性别 男
状态 离线
1.exe||2.exe
论坛跳转: