使用dos批處理文件的幾個高級命令,判斷
更新時間:2007年03月01日 00:00:00 作者:
if goto choice for 是批處理文件中比較高級的命令,如果這幾個你用得很熟練,你就是批處理文件的專家啦。
if 表示將判斷是否符合規(guī)定的條件,從而決定執(zhí)行不同的命令。 有三種格式:
1、 if "參數(shù)" == "字符串" 待執(zhí)行的命令
參數(shù)如果等于指定的字符串,則條件成立,運行命令,否則運行下一句。(注意是兩個等號)
如if "%1"=="a" format a:
2、 if exist 文件名 待執(zhí)行的命令
如果有指定的文件,則條件成立,運行命令,否則運行下一句。如if exist config.sys edit config.sys
3、 if errorlevel 數(shù)字 待執(zhí)行的命令
如果返回碼等于指定的數(shù)字,則條件成立,運行命令,否則運行下一句。如if errorlevel 2 goto x2 DOS程序運行時都會返回一個數(shù)字給DOS,稱為錯誤碼errorlevel或稱返回碼
goto 批處理文件運行到這里將跳到goto 所指定的標號處, 一般與if配合使用。 如:
goto end
:end
echo this is the end
標號用 :字符串 表示,標號所在行不被執(zhí)行
choice 使用此命令可以讓用戶輸入一個字符,從而運行不同的命令。使用時應該加/c:參數(shù),c:后應寫提示可輸入的字符,之間無空格。它的返回碼為1234……
如: choice /c:dme defrag,mem,end
將顯示
defrag,mem,end[D,M,E]?
例如,test.bat的內(nèi)容如下:
@echo off
choice /c:dme defrag,mem,end
if errorlevel 3 goto defrag 應先判斷數(shù)值最高的錯誤碼
if errorlevel 2 goto mem
if errotlevel 1 goto end
:defrag
c:\dos\defrag
goto end
:mem
mem
goto end
:end
echo good bye
此文件運行后,將顯示 defrag,mem,end[D,M,E]? 用戶可選擇d m e ,然后if語句將作出判斷,d表示執(zhí)行標號為defrag的程序段,m表示執(zhí)行標號為mem的程序段,e表示執(zhí)行標號為end的程序段,每個程序段最后都以goto end將程序跳到end標號處,然后程序?qū)@示good bye,文件結(jié)束。
if 表示將判斷是否符合規(guī)定的條件,從而決定執(zhí)行不同的命令。 有三種格式:
1、 if "參數(shù)" == "字符串" 待執(zhí)行的命令
參數(shù)如果等于指定的字符串,則條件成立,運行命令,否則運行下一句。(注意是兩個等號)
如if "%1"=="a" format a:
2、 if exist 文件名 待執(zhí)行的命令
如果有指定的文件,則條件成立,運行命令,否則運行下一句。如if exist config.sys edit config.sys
3、 if errorlevel 數(shù)字 待執(zhí)行的命令
如果返回碼等于指定的數(shù)字,則條件成立,運行命令,否則運行下一句。如if errorlevel 2 goto x2 DOS程序運行時都會返回一個數(shù)字給DOS,稱為錯誤碼errorlevel或稱返回碼
goto 批處理文件運行到這里將跳到goto 所指定的標號處, 一般與if配合使用。 如:
goto end
:end
echo this is the end
標號用 :字符串 表示,標號所在行不被執(zhí)行
choice 使用此命令可以讓用戶輸入一個字符,從而運行不同的命令。使用時應該加/c:參數(shù),c:后應寫提示可輸入的字符,之間無空格。它的返回碼為1234……
如: choice /c:dme defrag,mem,end
將顯示
defrag,mem,end[D,M,E]?
例如,test.bat的內(nèi)容如下:
@echo off
choice /c:dme defrag,mem,end
if errorlevel 3 goto defrag 應先判斷數(shù)值最高的錯誤碼
if errorlevel 2 goto mem
if errotlevel 1 goto end
:defrag
c:\dos\defrag
goto end
:mem
mem
goto end
:end
echo good bye
此文件運行后,將顯示 defrag,mem,end[D,M,E]? 用戶可選擇d m e ,然后if語句將作出判斷,d表示執(zhí)行標號為defrag的程序段,m表示執(zhí)行標號為mem的程序段,e表示執(zhí)行標號為end的程序段,每個程序段最后都以goto end將程序跳到end標號處,然后程序?qū)@示good bye,文件結(jié)束。
相關(guān)文章
禁止指定QQ號登錄的bat代碼(前提這個用戶在這臺機器登陸過)
禁止指定QQ號登錄的bat代碼(前提這個用戶在這臺機器登陸過),其實是通過設(shè)置Registry.db的只讀,導致qq無法修過2012-05-05用bat實現(xiàn)刪除系統(tǒng)腳本調(diào)試程序
用bat實現(xiàn)刪除系統(tǒng)腳本調(diào)試程序...2007-02-02dos/bat中獲取用戶輸入內(nèi)容的代碼(保存到文件中)
這篇文章主要介紹了dos/bat中獲取用戶輸入內(nèi)容的代碼,并且可以保存到文件中,需要的朋友可以參考下2022-11-11如何在 Netware 服務(wù)器中安裝多塊網(wǎng)卡
如何在 Netware 服務(wù)器中安裝多塊網(wǎng)卡...2006-12-12