找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 27759|回复: 4

[代码合集] 批处理if如何实现判断两个条件是否同时满足

[复制链接]
发表于 2013-1-28 18:36:51 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2017-7-4 22:45 编辑

帮忙看下这个条件判断的BAT代码怎么出问题了?
a 和 b 都是OK时设 TestResult 为OK,否则设为NG,但是我的代码好像不行啊!帮忙看下怎么回事啊?
  1. if @%a%==OK if %b%==OK (
  2.         set TestResult=OK
  3. else(
  4.         set TestResult=NG
  5.         )
  6. )
复制代码
发表于 2013-1-28 19:02:19 | 显示全部楼层
  1. @echo off & setlocal EnableDelayedExpansion
  2. set "aa=OK"
  3. set "bb=OK"
  4. if %aa%==OK if %bb%==OK (set TestResult=OK) else ( set TestResult=NG)
  5. echo %TestResult%

  6. pause
复制代码
发表于 2013-1-28 19:45:05 | 显示全部楼层
回复 2# hankerer
  1. @echo off
  2. set "aa=OK"
  3. set "bb=OK"
  4. if "%aa%"=="OK" (
  5.   if %bb%==OK (set TestResult=OK) else set TestResult=NG
  6. ) else set TestResult=NG
  7. echo %TestResult%
  8. pause
复制代码
  1. @echo off
  2. set "aa=OK"
  3. set "bb=OK"
  4. if "%aa%.%bb%"=="OK.OK" (set TestResult=OK) else set TestResult=NG
  5. echo %TestResult%
  6. pause
复制代码
发表于 2013-1-28 20:18:59 | 显示全部楼层
回复 3# apang
您总是能让我学到新东西.哈哈.
 楼主| 发表于 2013-1-29 06:26:18 | 显示全部楼层
  1. if "%aa%.%bb%"=="OK.OK" (set TestResult=OK) else set TestResult=NG
复制代码
其实我应该想到这个的,脑子蒙了,谢谢大家的帮助啊!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 23:00 , Processed in 0.027481 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表