首页 > 其他分享 >无涯教程-批处理 - Nested If 语句函数

无涯教程-批处理 - Nested If 语句函数

时间:2023-11-09 10:33:14浏览次数:29  
标签:语句 goto 批处理 some 无涯 value Nested 命令 echo

有时,要求彼此之间嵌入多个" 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

相关文章

  • 无涯教程-批处理 - Right String函数
    这用于从字符串末尾提取字符。RightString-示例@echooffsetstr=Thismessageneedschanged.echo%str%setstr=%str:~-8%echo%str%关于上述程序,需要注意的关键是,使用〜-"要提取的字符数"运算符来提取字符串的右边。上面的命令产生以下输出。Thismessagene......
  • 无涯教程-批处理 - Replace a String函数
    要将子字符串替换为另一个字符串,请使用字符串替换功能。ReplaceaString-示例@echooffsetstr=Thismessageneedschanged.echo%str%setstr=%str:needs=has%echo%str%关于上述程序,需要注意的关键是,该示例通过语句%str:needs=has%用字符串"has"替换了"needs"......
  • 无涯教程-批处理 - Remove All Spaces函数
    这用于通过替换删除字符串中的所有空格。RemoveAllSpaces-示例@echooffsetstr=Thisstringhasalotofspacesecho%str%setstr=%str:=%echo%str%关于上述程序,需要注意的关键是::=运算符用于删除字符串中的所有空格。上面的命令产生以下输出。Th......
  • 无涯教程-批处理 - Remove函数
    字符串替换功能还可用于从另一个字符串中删除子字符串。Remove-示例@echooffsetstr=Batchscriptsiseasy.Itisreallyeasy.echo%str%setstr=%str:is=%echo%str%关于上述程序,需要注意的关键是,使用:'stringtoberemoved'=command从字符串中删除了"is"一词......
  • 无涯教程-批处理 - Mid String函数
    这用于通过字符串中字符的位置提取子字符串。MidString-示例@echooffsetstr=HelloLearnfkecho%str%setstr=%str:~5,10%echo%str%关于上述程序,需要注意的关键是〜5,10用于指定需要显示的字符,在这种情况下,无涯教程希望showcharacter5到10。上面的命令产生以下......
  • 无涯教程-批处理 - Left String函数
    这用于从字符串的开头提取字符。@echooffsetstr=HelloLearnfkecho%str%setstr=%str:~0,5%echo%str%关于上述程序,要注意的关键是〜0,5用于指定需要显示的字符。在这种情况下,无涯教程说应该showcharacter0到5。上面的命令产生以下输出。HelloLearnfkHello参......
  • 无涯教程-批处理 - Align Right函数
    这用于将文本向右对齐,通常用于提高数字列的可读性。@echooffsetx=1000sety=1sety=%y%echo%x%sety=%y:~-4%echo%y%关于上述程序,需要注意的一些关键事项是-将空格添加到y变量,在这种情况下,将9个空格添加到y变量。无涯教程使用〜-4选项表示只想show......
  • 无涯教程-批处理 - toInt函数
    使用设置变量已设置为字符串的变量可以使用使用设置变量的/A开关转换为整数,以下示例显示了如何完成此操作。@echooffsetvar=13145set/Avar=%var%+5echo%var%上面的命令产生以下输出。13150除此之外,字符串具有以下可用的实现,批处理脚本具有以下命令,用于在字符串中执......
  • 无涯教程-批处理 - String length函数
    在DOS脚本中,没有定义用于查找字符串长度的长度函数,有一些自定义函数可用于相同的功能,以下是一个自定义函数的示例,用于查看字符串的长度。@echooffsetstr=HelloWorldcall:strLenstrstrlenechoStringis%strlen%characterslongexit/b:strLensetlocalenablede......
  • 无涯教程-批处理 - String Interpolation函数
    在DOS脚本中,可以使用set命令完成字符串插值,并在使用set命令时将数字定义的变量或任何其他文字排成一行。以下示例显示了如何也可以使用数字值进行字符串插值。@echooffSETa=HelloSETb=LearnfkSET/Ad=50SETc=%a%and%b%%d%echo%c%上面的命令产生以下输出。H......