計算機只在乎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撬即,比如變量不存在,導(dǎo)致語法錯誤颂翼。
檢查變量是否初始化
IF "%var%"=="" (SET var=default value)
或者
IF NOT DEFINED var (SET var=default value)
檢查變量是否與字符串匹配
SET var=Hello, World!
IF "%var%"=="Hello, World!" (
ECHO found
)
或者不區(qū)分大小寫來比較:
SET var=Hello, World!
IF /I "%var%"=="hello, world!" (
ECHO found
)
算數(shù)運算符比較
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
)