有时,要求彼此之间嵌入多个" if"语句。以下是此声明的一般形式。
if(condition1) if (condition2) do_something
因此,仅当满足condition1和condition2时,才会执行do_something块中的代码。
以下是如何使用嵌套if语句的示例。
@echo off SET /A a = 5 SET /A b = 10 if %a%==5 if %b%==10 echo "The value of the variables are correct"
上面的命令产生以下输出。
"The value of the variables are correct"
If errorlevel 语法
另一个特殊情况是" if errorlevel",它用于测试最后运行的命令的退出代码,通常,如果命令成功完成,则命令传递0;如果命令失败,则传递1。
以下是此语句的一般语法。
if errorlevel n somecommand
其中" n"是整数退出代码之一。
Goto 语法
通常,批处理文件的执行逐行进行,而每一行上的命令则依次运行,但是,通常希望在跳过其他部分的同时执行批处理文件的特定部分。跳到特定部分的功能由适当命名的" goto"命令(写为一个单词)提供。
... goto :label ...some commands :label ...some other commands
执行将跳过"some commands",并以"some other commands"开头,标签可以是脚本中任何位置的行,包括" goto"命令之前的行, " Goto"命令通常出现在" if"语句中。如,您可能具有以下类型的命令:
if (condition) goto :label
以下是如何使用goto语句的示例。
@echo off SET /A a = 5 if %a%==5 goto :labela if %a%==10 goto :labelb :labela echo "The value of a is 5" exit /b 0 :labelb echo "The value of a is 10"
关于上述程序,需要注意的关键是-
标签的代码语句应在标签声明之后的下一行。
您可以在批处理文件中定义多个goto语句及其对应的标签。
标签声明可以在文件中的任何位置。
上面的命令产生以下输出。
"The value of a is 5"
参考链接
https://www.learnfk.com/batch-script/batch-script-nested-if-statements.html
标签:语句,goto,批处理,some,无涯,value,Nested,命令,echo From: https://blog.51cto.com/u_14033984/8273141