标题: 请教 关于 if 判断语句的使用
[打印本页]
作者: a794685135
时间: 2008-7-17 20:34
标题: 请教 关于 if 判断语句的使用
具体问题是这样:
在用netsh -f 导入ip从而达到设置ip的时候
判断输入的值, 如果是1 2 8 9 则修改本地网关 改成输入的值结尾的(比如输入1 则该网关为192.168.0.1)
如果输入的不是1 2 8 9中的值 而且如果是a 的话就 goto a
如果以上都不成立 则 goto d
这么写这个判断语句 ?
[
Last edited by a794685135 on 2008-7-17 at 09:26 PM ]
作者: HAT
时间: 2008-7-17 21:35
set /p input=输入:
if %input% equ 1 (
echo 网关为192.168.0.1
) else if %input% equ 2 (
echo 网关为192.168.0.2
) else if %input% equ 8 (
echo 网关为192.168.0.8
) else if %input% equ 9 (
echo 网关为192.168.0.9
)else if %input% equ a (
goto :a
)else (
goto :d
)
作者: a794685135
时间: 2008-7-17 21:50
Quote: |
Originally posted by HAT at 2008-7-17 09:35 PM:
[code]set /p input=输入:
if %input% equ 1 (
echo 网关为192.168.0.1
) else if %input% equ 2 (
echo 网关为192.168.0.2
) else if %input% equ 8 (
echo 网关为192.168.0.8
) else ... |
|
谢谢楼上的 ,
还想问一下, 可不可以用for %%i in (1 2 8 9)然后达到上面的效果?
作者: a794685135
时间: 2008-7-17 21:59
Quote: |
set /p ip=:
for %%i in (1 2 8 9) do if %ip% equ %%i (
goto 1
) else if %ip%==a (
goto a
) else (
goto d
) |
|
还是不行, 在for里面只取了1 而没有取到2 8 9
[
Last edited by a794685135 on 2008-7-17 at 10:06 PM ]
作者: a794685135
时间: 2008-7-17 22:54
set /p ip=输入:
for %%a in (1 2 8 9) do set .%%a=%%a
if /i "%ip%"=="a" goto a
if not defined .%ip% goto d
goto 1 ::不满足以上2个条件则执行此句
OK , 终于搞定了 !!