批处理中的IF详解
在CMD使用IF /?打開IF的系統(tǒng)幫助會(huì)發(fā)現(xiàn)IF有3種基本的用法!
第一種用法:IF [NOT] ERRORLEVEL number command
這種用法現(xiàn)在很少用了,因?yàn)樗枰褂玫紺HOICE命令,這個(gè)命令現(xiàn)在被set /p代替了,它是判斷CHOICE命令選擇的選項(xiàng)的,CHOICE命令是一個(gè)提供選項(xiàng)功能的命令。
例子:
這個(gè)用法的基本做用是判斷上一條命令執(zhí)行結(jié)果的代碼,以決定下一個(gè)步驟.一般上一條命令的執(zhí)行結(jié)果代碼只有兩結(jié)果,"成功"用0表示 ?"失敗"用1表示.
第二種用法:IF [NOT] string1==string2 command
第三種用法:IF [NOT] EXIST filename command
IF增強(qiáng)的用法
??IF [/I] string1 compare-op string2 command #參數(shù)/I表示不區(qū)分大小寫
??IF CMDEXTVERSION number command
??IF DEFINED variable command ? #判斷變量是否存在,很有用
CMDEXTVERSION?條件的作用跟?ERRORLEVEL?的一樣,除了它是在跟與命令擴(kuò)展名有關(guān)聯(lián)的內(nèi)部版本號(hào)比較。第一個(gè)版本是?1。每次對(duì)命令擴(kuò)展名有相當(dāng)大的增強(qiáng)時(shí),版本號(hào)會(huì)增加一個(gè)。命令擴(kuò)展名被停用時(shí),CMDEXTVERSION?條件不是真的。
如果已定義環(huán)境變量,DEFINED?條件的作用跟?EXISTS?的一樣,下面兩條命令效果一樣。
IF DEFINED variable command
IF NOT "variable"=="" command
用“set variable=”命令使變量variable變成未定義,即空值,一句話,變量值為空,則為未定義;變量值不為空,則為已定義。
用語(yǔ)句IF DEFINED variable command判斷變量是否存在時(shí),請(qǐng)注意variable為不使用引導(dǎo)符號(hào)%的變量名,不能用寫為%variable%,否則出錯(cuò)。
? set a=10
? if DEFINED a (echo l hava define) else (echo l don't define)
? set a=
? if DEFINED a (echo l hava define) else (echo l don't define)
輸出:
? l hava define
? l don't define
最后面還有一些用來判斷數(shù)字的符號(hào):
????EQU -?等于
????NEQ -?不等于
????LSS -?小于
????LEQ -?小于或等于
????GTR -?大于
????GEQ -?大于或等于
轉(zhuǎn)載于:https://www.cnblogs.com/lm970585581/p/7677485.html
總結(jié)
- 上一篇: entsel约束条件lisp_autoc
- 下一篇: CorelDRAWX4的VBA插件开发(