【问题标题】:Dos batch - basic if/else not workingDos 批处理 - 基本 if/else 不起作用
【发布时间】:2013-03-02 07:32:07
【问题描述】:

我有:

@echo off
echo before
IF 1 == 1 (
    echo got it
) ELSE (
    echo missed
}
echo done

这段代码只打印“之前”,没有别的。我不知道我错过了什么......

【问题讨论】:

    标签: batch-file dos


    【解决方案1】:

    您的 ELSE 末尾的括号类型错误 - 您得到的是 } 而不是 )。将其更改为:

    @echo off
    echo before
    IF 1 == 1 (
        echo got it
    ) ELSE (
        echo missed
    )
    echo done
    

    输出是:

    before
    got it
    done
    

    【讨论】:

    • 哇!说傻话!! 11 分钟后,乔恩,我就能接受你的回答。
    • @Step 这是您接受他回答的 11 分钟提醒。祝你有美好的一天。
    【解决方案2】:

    这就像嵌套样式中的 if else 一样工作

    IF %CHUSEL%==0 (
      SET IP=10.148.24.1
    ) ELSE (
      IF %CHUSEL%==1 (
          SET IP=10.148.24.2
      ) ELSE (
          IF %CHUSEL%==2 (
              SET IP=10.148.24.3
          ) ELSE (
              IF %CHUSEL%==3 (
                 SET IP=10.148.24.4
              )
          )
       )
    )
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-07
      • 1970-01-01
      • 1970-01-01
      • 2012-02-24
      • 2023-03-20
      • 1970-01-01
      相关资源
      最近更新 更多