【格式四】IF [ /I ] [ NOT ] string1 compare-op string2 command
string1 compare-op string2
string1 和 string2 比较时使用compare-op运算符,结果为true则执行command
其中, compare-op 可以是:
- EQU --- 等于
- NEQ --- 不等于
- LSS --- 小于
- LEQ --- 小于或等于
- GTR --- 大于
- GEQ --- 大于或等于
注意:compare-op 忽略大小写
【/I参数】
/I参数表示:在比较时, string1 和 string2 不区分大小写
注意:
- /I参数和/NOT参数同时存在,则/I参数必须位于/NOT参数之前
- /I参数只能用于CMD.EXE的命令扩展模式下。
示例
C:\>cmd /e:on
Microsoft Windows [版本 6.1.7601]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。
C:\>if /i abc == Abc echo ok
ok
C:\>cmd /e:off
Microsoft Windows [版本 6.1.7601]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。
C:\>if /i abc == Abc echo ok
此时不应有 abc。
C:\>
【格式五】IF [NOT] CMDEXTVERSION number command
CMDEXTVERSION number
如果当前CMD.EXE的CMDEXTVERSION变量值大于或等于number时,则执行command
示例
:: 本示例包含汉字,如执行乱码,请使用 Notepad++ 把本文档转化成ANSI编码 【标注一】
::demo.bat
@echo off
:: 查看用户是否定义了CMDEXTVERSION环境变量
echo %CMDEXTVERSION%
if CMDEXTVERSION 2 (
echo good
) else (
echo bad
)
【标注一】 下载Notepad++
【格式六】IF [NOT] DEFINED variable command
DEFINED variable
如果定义了variable,则执行command
示例
:: 本示例包含汉字,如执行乱码,请使用 Notepad++ 把本文档转化成ANSI编码 【标注一】
::demo.bat
@echo off
:: 定义了one和two两个变量
set "one=300"
set "two="
if defined one (
echo 变量one已定义
) else (
echo 变量one未定义
)
if defined two (
echo 变量two已定义
) else (
echo 变量two未定义
)
写作不易,本文如能帮到您,麻烦您 “在下面一圈三连”。