基本描述
在bat脚本中,if条件判断语句共有6种比较操作符,分别为
操作符(不区分大小写) | 描述 | 全称 |
---|---|---|
equ | 等于 | equal |
neq | 不等于 | no equal |
lss | 小于 | less than |
leq | 小于等于 | leq less than or equal |
gtr | 大于 | greater than |
geq | 大于等于 | geq greater than or equal |
其中,只有等于操作符可以使用符号 “==” 表示,其他操作符只能使用英文简写
当参与比较的字符串是字符串时,将被转换为对于的ASCII码进行比较
If指令基本格式
指令格式为:if 条件表达式 (…)
注意:
- 英文缩写的比较操作符,左右两边必须有空格;
“==”两侧可以不加空格 - 比较表达式和()之间必须有空格
@echo off
Set inputValue=15
if %inputValue%==15 (echo %inputValue%等于15)
if %inputValue% equ 15 (echo %inputValue%等于15)
pause
指令参数
判断字符串是否相等的时候,if语句会区分大小写
参数"/I(i)"可以在比较字符串时串忽略大小写;
@echo off
if "abc"=="ABC" (
echo 大小相等
) else (
echo 大小不等
)
if /i "abc"=="ABC" (
echo 大小相等
) else (
echo 大小不等
)
pause
多分支语句 if else if
1. if else if均在一行
@echo off
set inputValue=15
if %inputValue% gtr 100 (echo %inputValue%大于100) else if %inputValue% gtr 10 (echo %inputValue%大于10) else (echo %inputValue%小于或等于10)
pause
2. 右括号“(” 和else if 多行
右括号")"与 else之间空格可忽略
@echo off
set inputValue=23
if %inputValue% gtr 100 (
echo 大于100
) else if %inputValue% gtr 10 (
echo 大于10
) else if %inputValue% gtr 0 (
echo 大于0
)
pause
3. if 和 else if多行
右括号")"后需跟 “^”
@echo off
set inputValue=23
if %inputValue% gtr 100 (
echo 大于100
)^
else if %inputValue% gtr 10 (
echo 大于10
)^
else if %inputValue% gtr 0 (
echo 大于0
)
pause
If条件语句拓展功能
1. If exist
判断驱动器、文件夹或文件是否存在
注意:if后的变量要加 %%
@echo off
set filepath=C:\
if exist %filepath% (
echo %filepath%存在
)
if not exist %filepath% (
echo %filepath%不存在
)
set filepath=C:\Users\Administrator\Desktop
if exist %filepath% (
echo 路径%filepath%存在
) else (
echo 路径%filepath%不存在
)
set sourcefile=C:\Users\Administrator\Desktop\test.bat
if exist %sourcefile% (
echo 文件%sourcefile%存在
) else (
echo 文件%sourcefile%不存在
)
pause
2. If defined
判断某个变量是否已经被赋值
注意:if后的变量 不能加 %%文章来源:https://www.toymoban.com/news/detail-779975.html
@echo off
set /p filepath=请输入:
if defined filepath (
echo filepath存在
)
if not defined filepath (
echo filepath不存在
)
pause
3. if结合errorlevel使用
结果判断,说明:环境变量errorlevel的初始值为0,当一些命令执行不成功,就会返回一个数值,如:1 ,2 等文章来源地址https://www.toymoban.com/news/detail-779975.html
@echo off
rem call "D:\VS Code\Microsoft VS Code\Code.exe"
call C:\Users\Administrator\Desktop\printf.bat
if %errorlevel% == 0 (
echo 前条执行成功
) else (
echo 前条执行失败
)
pause
到了这里,关于Windows 批处理(bat) if条件判断语句使用教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!