批处理中的if-else语法

本文将介绍怎样在批处理脚本中使用 if-else 语法。

if-else

if-else语句结构用来处理 “如果是,**处理;否则,**处理” 这种场景。例如:我们通过用户输入薪水,来打印出不同的消息。代码如下:

@echo off
set /p salary=输入收入:
if %salary% lss 3200 ( echo 生活非常困难 ) else ( echo 还要继续努力哦 )
pause

将语句写在一行,如果语句太长不易阅读。代码改进如下:

@echo off
set /p salary=输入收入:
if %salary% lss 3200 (
    echo 生活非常困难
) else (
    echo 还要继续努力哦
)
pause

是不是觉得看着要顺眼些了呢!

注意:

如果 if  后面判断为真后,只处理单句命令的话,直接跟在后面就可以。例如:

@echo off
set /p salary=输入收入:
if %salary% lss 3200 echo 薪水为:%salary%
pause

如果 if 后面判断为真后,需要执行多条命令的话,则需要用括号将多条命令扩起来。并且括号 “(”  要跟 if 同一行,如果不在同一行的话执行时会报语法错误。例如:

@echo off
set /p salary=输入收入:
if %salary% lss 3200 (
    echo 薪水为:%salary%
    echo 生活非常困难
    goto end
)
echo 还要继续努力哦
:end
pause

if-else if-else

如果条件分支比较少,使用 if-else 就可以了。但是,如果你遇到条件非常多的怎么处理呢?if-else也能处理,批处理提供了 if -else if-else 类似 switch 语句。

实例:根据学生输入的成绩给出学生级别。代码如下:

@echo off
set /p score=输入成绩:
if %score% lss 60 (
    echo 未及格,需要多努力啊!
) else if %score% lss 70 (
    echo 及格,多做题
) else if %score% lss 80 (
    echo 良,加把劲考
) else if %score% lss 90 (
    echo 优,你很优秀,继续保持
) else (
    echo 不是凡人
)
pause

如果你要将 else if 换行,需要在 “)” 后面添加 “^” 符号。如下:

@echo off
set /p score=输入成绩:
if %score% lss 60 (
    echo 未及格,需要多努力啊!
) ^
else if %score% lss 70 (
    echo 及格,多做题
) ^
else if %score% lss 80 (
    echo 良,加把劲考
) ^
else if %score% lss 90 (
    echo 优,你很优秀,继续保持
) ^
else (
    echo 不是凡人
)
pause

点击查看更多批处理知识……

如果在胜利前却步,往往只会拥抱失败;如果在困难时坚持,常常会获得新的成功。
0 不喜欢
说说我的看法 -
全部评论(
没有评论
关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号