if语句的格式
示例一、
标准格式:
IF [NOT] ERRORLEVEL number command
IF [NOT] string1==string2 command
IF [NOT] EXIST filename command
NOT 指定只有条件为 false 的情况下,Windows 才应该执行该命令。
ERRORLEVEL number 如果最后运行的程序返回一个等于或大于指定数字的退出代码,指定条件为 true。
string1==string2 如果指定的文字字符串匹配,指定条件为 true。
EXIST filename 如果指定的文件名存在,指定条件为 true。
command 如果符合条件,指定要执行的命令。如果指定的条件为 FALSE,命令后可跟 ELSE 命令,该命令将在 ELSE 关键字之后执行该命令。
ELSE 子句必须出现在同一行上的IF 之后。例如:
IF EXIST filename. (
del filename.
) ELSE (
echo filename.missing.
)
由于
del
命令需要用新的一行终止,以下子句有效
:
IF EXIST filename. (del filename.) ELSE echo filename. missing
如果命令扩展被启用,
IF
会如下改变
:
IF [/I] string1 compare-opstring2 command
IF CMDEXTVERSION numbercommand
IF DEFINED variablecommand
/I
开关
(
如果指定
)
说明要进行的字符串比较不分大小写
其中, compare-op 可以是:
EQU - 等于
NEQ - 不等于
LSS - 小于
LEQ - 小于或等于
GTR - 大于
GEQ - 大于或等于
如果已定义环境变量,DEFINED 条件的作用跟 EXIST 的一样,除了它取得一个环境变量,返回的结果是 true。
实际用例:
if !errorlevel! equ 1 (
goto One
) else ( if !errorlevel! equ 0 (
goto Zero)
)