關於if errorlevel 命令

2021-06-02 09:08:54 字數 2206 閱讀 4134

文章參考自:

一,if errorlevel

測試前一程式的返回狀態,如果該程式的返回狀態大與或等於所說明的值就執行所說明的dos命令

if errorlevel 命令讓批處理檔案測試一程式的返回狀態值,然後根據測試結果作相應的進一步處理,當

ms-dos遇到一條 if errorlevel 命令時

,它就將前一條ms-dos命令的返回狀態值與在if命令中所說的值想比較,如果該程式的返回狀態

大於或等於

if命令所說明的值ms-dos就執行相應的命令,如果返回狀態值

小於所說明的值,ms-dos就從批處理檔案中的下一條命令繼續執行,如果用的是if not errorlevel命令,就正好相反

例子:下面批處理檔案執行formation命令,並顯示基於 format的返回值的完整狀態資訊:

@echo off

format a:

if errorlevel 5 goto no_response

if errorlevel 4 goto error

if errorlevel 3 goto user_ctrlc

echo successful format operation

goto done

no_response

echo fixed disk will not be formatted

goto done

:error

echo error in processing.format incopplete

goto done

:user_ctrlc

echo format incomplete to ctrl_c

:done

批處理檔案首先測試最大的返回狀態值。記住,如果返回狀態值大於 或等於有if命令所說明的值,ms-dos就執行所說明的命令;如果該批處理檔案首先測試返回狀態值是否為3,那麼ms-dos會始終執行"

goto user ctrlc",而不論返回狀態值是3或4,或還是5。這是因為這些返回狀態值都是大於或等於3的通過將測試次序倒過來,該批處理檔案就能對各返回狀態值分別執行正確的那組命令

通過組合if errorlevel和if not errorlevel,可以測試一特定的返回狀態值。例如,可以用下列命令測試返回狀態值是否為3:

if errorlevel 3 if not errorlevel 4 goto user_ctrlc

注意:這時最好用 

if %errorlevel%==3 goto user_ctrlc

二,if not errorlevel

測試前一程式的返回狀態,

如果該程式的返回狀態小於所說明的值就執行所說明的dos命令

將not算符用於 if errorlevel命令,批處理檔案就能測試一返回值是否小於一具體值,如果是,ms-dos就執行所說明的命令:否側,它就從批處理檔案中的 下一條命令處繼續執行,if not errorlevel 命令的 格式如下:

if not errorlevel 值 dos命令

三, 對特定 errorlevel 值進行測試

當乙個批處理檔案變的 較為複雜時,可能會需要將一條 if errorlevel命令與一條 if not errorlevel m命令後側枝從 0 至4的返回狀態值

@echo off

diskcopy a: b:

if errorlevel 0 if not errorlevel 1 echo exit 0

if errorlevel 1 if not errorlevel 2 echo exit 1

if errorlevel 2 if not errorlevel 3 echo exit 2

if errorlevel 3 if not errorlevel 4 echo exit 3

if errorlevel 4 if not errorlevel 5 echo exit 4

在第一條if命令中。第乙個測試(if errorlevel 0)保證返回狀態值至少為0:第二個測試(if not errorlevel 1)保證返回狀態值小於1.將這兩個測試組合起來。該命令就保證返回狀態值為0,類試的,第二條if命令返回狀態值為1,等等。

注意:當需要

對特定 errorlevel 值進行測試時,最好用if %errorlevel%==值 cmmand的形式。

errorlevel與%errorlevel%的區別

關於if errorlevel 命令

文章參考自 一,if errorlevel 測試前一程式的返回狀態,如果該程式的返回狀態大與或等於所說明的值就執行所說明的dos命令 if errorlevel 命令讓批處理檔案測試一程式的返回狀態值,然後根據測試結果作相應的進一步處理,當 ms dos遇到一條 if errorlevel 命令時 ...

關於updatedb命令和locate命令的問題

在centos 7中使用locate命令發現沒有這個命令,就去安裝但是也不可安裝 這就需要使用updatedb更新一下檔案庫,執行這個命令發現也不存在 所以就yum安裝,發現還是不存在 這是你就需要去安裝一下mlocate 命令如下 yum y install mlocate yum y insta...

Android MTK Android 編譯命令

命令格式 maketek option project action modules option t tee 輸出log資訊到當前終端 o opt 編譯附加條件,一般使用 opt target build variant user來編譯使用者板軟體 h help 列印幫助資訊並退出 project...