bat中errorlevel與%errorlevel%的區(qū)別

字號:


    他們都是判斷上個命令的返回值。
    當(dāng)使用iferrorlevel值cmmand句式時,它的含義是:如果返回的錯誤碼值大于或等于值的時候,將執(zhí)行cmmand
    操作;
    當(dāng)使用if%errorlevel%==值cmmand句式時,它含義是:如果返回的錯誤碼值等于值的時候,將執(zhí)行cmmand操作。
    一般上一條命令的執(zhí)行結(jié)果返回的值只有兩個,"成功"用0表示"失敗"用1表示,實際上,errorlevel返回值可
    以在0~255之間,
    例如xcopy默認(rèn)的errorlevel值就有5個,分別表示5種執(zhí)行狀態(tài):
    0復(fù)制文件成功
    1未找到復(fù)制文件
    2用戶通過CTRLC終止了xcopy操作
    4出現(xiàn)了初始化錯誤 
    5出現(xiàn)了磁盤寫入錯誤
    if%ERRORLEVEL%對數(shù)值的比較方法不僅僅限于等于,可以使用參數(shù)來控制。
    比如:IF%ERRORLEVEL%LEQ1gotookay
    全部的比較參數(shù)如下:
    EQU-等于
    NEQ-不等于
    LSS-小于
    LEQ-小于或等于
    GTR-大于
    GEQ-大于或等于