Windows批处理指南

Windows 批处理脚本指南: If 语句

2019-06-12  本文已影响0人  ettingshausen

计算机只在乎0和1是吧?所以我们需要一种方法,来处理当条件是0的时候干什么,条件为1的时候又干什么。

好消息是 DOS 对条件语句支持的非常好。

检查文件或文件夹是否存在


IF EXIST "temp.txt" ECHO found

取反:

IF NOT EXIST "temp.txt" ECHO not found

If 和 Else 语句:

IF EXIST "temp.txt" (
    ECHO found
) ELSE (
    ECHO not found
)

NOTE: 在判断的表达式两边加上双引号,这样可以避免一些bug,比如变量不存在,导致语法错误。

检查变量是否初始化


IF "%var%"=="" (SET var=default value)

或者

IF NOT DEFINED var (SET var=default value)

检查变量是否与字符串匹配


SET var=Hello, World!

IF "%var%"=="Hello, World!" (
    ECHO found
)

或者不区分大小写来比较:

SET var=Hello, World!

IF /I "%var%"=="hello, world!" (
    ECHO found
)

算数运算符比较


SET /A var=1

IF /I "%var%" EQU "1" ECHO equality with 1

IF /I "%var%" NEQ "0" ECHO inequality with 0

IF /I "%var%" GEQ "1" ECHO greater than or equal to 1

IF /I "%var%" LEQ "1" ECHO less than or equal to 1

检查返回值


IF /I "%ERRORLEVEL%" NEQ "0" (
    ECHO execution failed
)
上一篇下一篇

猜你喜欢

热点阅读