天天看點

【批處理學習筆記】第二十六課:傳回值

    有些指令在執行之後将會傳回一定的錯誤值(errorlevel),可以通過errorlevel的值判斷指令執行的狀況。這點類似于C語言裡面的exit(num),num就是錯誤代碼。

    擷取傳回值errorlevel的方法就是,在執行指令後,立馬調用傳回值errorlevel,如echo %errorlevel%或者if %errorlevel%==1等指令。

    errorlevel舉例:

===============================================

@echo off

reg add HKCU /v try /f>nul

reg delete HKCU /v try /f

if errorlevel 0 (echo 删除成功! ) else (echo 删除失敗!)

if %errorlevel%==0 (echo 删除成功! ) else (echo 删除失敗!)

pause>nul

    上面例子中,由于第一成功的删除了系統資料庫,導緻第二次因為找不到系統資料庫而宣告失敗。同時我們也看到了errorlevel的使用方法,即if errorlevel 0和if %errorlevel%==0是一樣的。也許你注意到了,裡面還有個笑臉呢~O(∩_∩)O哈哈~這就是ASCII碼啦,後面跟你講啊…

    一般情況下,程式或指令成功執行時,傳回的errorlevel是0,錯誤時傳回1或更高的值。當然,有些指令是沒有傳回值的,這點需要注意。

    嗯,有沒有想起前面有個類似的東西啊?對了,那就是||和&&了,這兩個符号就是根據errorlevel的值來進行邏輯判斷的~

繼續閱讀