Board logo

标题: [已解决]批处理IF语句同时满足二个条件的语句要怎么写? [打印本页]

作者: lovealei    时间: 2011-8-22 18:10     标题: [已解决]批处理IF语句同时满足二个条件的语句要怎么写?

SET A=1111
SET B=2222



A=1111
B=2222

执行CASE1

否则执和CASE2

查了很多资料都没有搞明白
作者: raymai97    时间: 2011-8-22 18:27

这个不是很确定,如果不介意代码多的话,可以试试:
  1. set a=1111
  2. set b=2222
  3. set c=0
  4. if "%a%"=="1111" set /a c+=1
  5. if "%b%"=="2222" set /a c+=1
  6. if "%c%"=="2" goto case1
  7. goto case2
复制代码

作者: garyng    时间: 2011-8-22 18:42

你可以把两个字符连在一起判断~
不知楼主是不是这意思~
  1. @echo off
  2. SET A=1111
  3. SET B=2222
  4. if "%A%_%B%"=="1111_2222" (goto case1) else (goto case2)
  5. :case1
  6. echo A=1111
  7. echo B=2222
  8. pause
  9. exit
  10. :case2
  11. echo Error!
  12. pause
  13. exit
复制代码

作者: lovealei    时间: 2011-8-22 19:07

原来是这样,我一直在想IF ELSE 嵌套, 谢谢二位大哥!你们的代码都可以达到我的目的,
作者: ArdentMan    时间: 2011-8-22 20:00

  1. @Echo Off
  2. Set "Flag=a"
  3. Set /A a=111,b=222
  4. If %a% NEQ 111 Set "Flag="
  5. If %b% NEQ 222 Set "Flag="
  6. If Defined Flag Goto Case1
  7. :Case2
  8. ....
  9. :Case1
  10. ....
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2