批处理多条件判断,满足其中一个执行命令,怎么做?
@echooffver|findstr"5.1">nul&&(set"m=ipconfig^|findstr/i"ipaddress"")||(set"m=ipconfi...
@echo off
ver|findstr "5.1" >nul && (
set "m=ipconfig^|findstr /i "ip address""
)|| (
set "m=ipconfig^|findstr /i "ipv4""
)
for /f "tokens=14* delims=: " %%1 in ('%m%')do echo 您的IP是:IP=%%2
echo (如遇杀毒提示请点击允许和确定)
FOR %%i in (10.10.144.* 10.10.136.*,10.10.138.*) do if %ip%==%%i goto 20
FOR %%i in (10.10.230.*;10.10.152.*;10.10.155.*) do if %ip%==%%i goto 21
FOR %%i in (10.10.181.*;10.10.180.*) do if %ip%==%%i goto 22 展开
ver|findstr "5.1" >nul && (
set "m=ipconfig^|findstr /i "ip address""
)|| (
set "m=ipconfig^|findstr /i "ipv4""
)
for /f "tokens=14* delims=: " %%1 in ('%m%')do echo 您的IP是:IP=%%2
echo (如遇杀毒提示请点击允许和确定)
FOR %%i in (10.10.144.* 10.10.136.*,10.10.138.*) do if %ip%==%%i goto 20
FOR %%i in (10.10.230.*;10.10.152.*;10.10.155.*) do if %ip%==%%i goto 21
FOR %%i in (10.10.181.*;10.10.180.*) do if %ip%==%%i goto 22 展开
展开全部
FOR %%i in (10.10.144.* 10.10.136.*,10.10.138.*) do if %ip%==%%i goto Lable20
FOR %%i in (10.10.230.*;10.10.152.*;10.10.155.*) do if %ip%==%%i goto Lable21
FOR %%i in (10.10.181.*;10.10.180.*) do if %ip%==%%i goto Label22
:Lable20
echo 这里是Label20,可以用:XXX 定义一个跳转位置
goto End
:Label21
echo 这里是Label21,然后就可以用goto XXX跳转到那个位置
goto End
:Label22
echo 这里是Label22,最好给上面都加上goto End,不然会顺序往下执行!
:End
echo 这里是结束位置
FOR %%i in (10.10.230.*;10.10.152.*;10.10.155.*) do if %ip%==%%i goto Lable21
FOR %%i in (10.10.181.*;10.10.180.*) do if %ip%==%%i goto Label22
:Lable20
echo 这里是Label20,可以用:XXX 定义一个跳转位置
goto End
:Label21
echo 这里是Label21,然后就可以用goto XXX跳转到那个位置
goto End
:Label22
echo 这里是Label22,最好给上面都加上goto End,不然会顺序往下执行!
:End
echo 这里是结束位置
更多追问追答
追问
lable是必需的吗?匹配多个条件中的一个,每个条件之间用什么隔开?
追答
印象中是用空格隔开吧?label不是必须的,但是每个标记应该不能是数字开头吧我记得。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询