一、批處理if書寫格式
if 條件表達(dá)式 (語句1) else (語句2),它的含義是:如果條件表達(dá)式成立,那么,就執(zhí)行語句1,否則,將執(zhí)行語句2。
二、四種批處理if的用法
1、判斷驅(qū)動器、文件或文件夾是否存在,用 if exist 語句
例如:if exist c:/xue51com.txt (echo c盤下有xue51com.txt存在) else (echo c盤下不存在xue51com.txt)
2、判斷某兩個(gè)字符串是否相等,用 if “字符串1”==“字符串2” 語句
例如:if “xue”==“xyz” (echo 字符串xue等于字符串xyz) else (echo 字符串xue不等于字符串xyz),這個(gè)例子主要是檢測字符串(注意,用if檢測字符串是否相等的時(shí)候,后面用的不是“=”,而是“==”)
3、判斷某兩個(gè)數(shù)值是否相等,用 if 數(shù)值1 equ 數(shù)值2 語句
舉例:if 1 equ 2 (echo 1等于2) else (echo 1不等于2),這個(gè)例子功能是檢測數(shù)值:
(注意,批處理中大于符號不能用:“>”,而用“gtr”,其它的也類似)
比較運(yùn)算符一覽:
EQU - 等于
NEQ - 不等于
LSS - 小于
LEQ - 小于或等于
GTR - 大于
GEQ - 大于或等于
4、判斷某個(gè)變量是否已經(jīng)被賦值,用 if defined str 語句
舉例:if defined str (echo 變量str已經(jīng)被賦值,其值為%str%) else (echo 變量str的值為空)
5、if結(jié)合errorlevel使用
說明:環(huán)境變量errorlevel的初始值為0,當(dāng)一些命令執(zhí)行不成功,就會返回一個(gè)數(shù)值,如:1 ,2 等
IF-ERRORLEVEL
舉例:
XCOPY F:/test.bat D:/
IF ERRORLEVEL 1 ECHO 文件拷貝失敗
IF ERRORLEVEL 0 ECHO 成功拷貝文件
如果文件拷貝成功,屏幕就會顯示“成功拷貝文件”,否則就會顯示“文件拷貝失敗”
IF ERRORLEVEL 是用來測試它的上一個(gè)DOS命令的返回值的,注意只是上一個(gè)命令的返回值,而且返回值必須依照從大到小次序順序判斷。
因此下面的批處理文件是錯(cuò)誤的:
@ECHO OFF
XCOPY C:/AUTOEXEC.BAT D:/
IF ERRORLEVEL 0 ECHO 成功拷貝文件
IF ERRORLEVEL 1 ECHO 未找到拷貝文件
IF ERRORLEVEL 2 ECHO 用戶通過ctrl-c中止拷貝操作
IF ERRORLEVEL 3 ECHO 預(yù)置錯(cuò)誤阻止文件拷貝操作
IF ERRORLEVEL 4 ECHO 拷貝過程中寫盤錯(cuò)誤
無論拷貝是否成功,后面的:
未找到拷貝文件
用戶通過ctrl-c中止拷貝操作
預(yù)置錯(cuò)誤阻止文件拷貝操作
拷貝過程中寫盤錯(cuò)誤
關(guān)于批處理if以及if exist else語句的用法就給大家講解到這里了,希望能幫助到有此需求的伙伴們!
留言與評論(共有 條評論) |