批处理嵌套if语句

有时候,要求有多个嵌入的“if”语句。 以下是本声明的一般形式。

if(condition1) if (condition2) do_something

所以只有当条件1和条件2都满足时,才会执行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

执行将跳过“一些命令”,并开始“其他一些命令”。 标签可以是脚本中任何地方的一行,包括在“goto”命令之前。“if”语句中经常出现“goto”命令。 例如,可能有一个类型的命令 -

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"

执行上面示例代码,得到以下结果 -

"The value of a is 5"

上一篇: 批处理决策结构 下一篇: 批处理运算符