批次檔時無格式的文字檔,它包含一條或多條命令。它的副檔名為.bat或.cmd。使用批次檔可以簡化日常重複性任務。其協助:命令 /? eg:echo /?
Ctrl+c按鍵組合來強行終止一個批處理的執行過程。
echo命令
----開啟、關閉請求回顯功能,或顯示訊息。執行@echo off不但關閉以後命令的回顯,連echo off命令本身也不顯示了。通常以@echo off作為批次程式的首行。
--echo hello world
goto和:
----指定跳轉到標籤
@echo off
:start
set /a var+=1
echo %var%
if %var% leq 3 goto start
Pause
輸出:1 2 3 4
rem命令
---等價於::,注釋命令,在C語言中<==>/* */,它並不會被執行,只是其一個注釋的作用,便於閱讀和以後修改
---rem hello world
pause命令
---暫停,防止批處理執行完後直接退出!執行pause命令後會自動在cmd裡顯示“請按任意鍵繼續...”這樣一句話
call命令
---從一個批次程式調用另一個屁處理常式,並且不終止父批次程式。
---call path\filename.bat
start命令
---調用外部程式,所有的dos命令和命令列程式都可以由start命令來調用(比call適用範圍廣,call只能調用批次檔)。會新起一個cmd視窗
Start explorer d:\ 調用映像介面開啟d盤
choice命令
---使使用者輸入一個字元來用於選擇,從而根據使用者的選擇返回不同的errorlevel,然後與if errorlevel配合,根據使用者的選擇運行不同的命令
-----sample.bat
@echo off
choice /C dme /M "defrag,mem,end"
if errorlevel 3 goto end rem (應先判斷數值最高的錯誤碼)
if errorlevel 2 goto mem
if errorlevel 1 goto defrag
:defrag
c:\dos\defrag
goto end
:mem
mem
goto end
:end
echo good bye
if命令
---表示判斷是否符合規定的條件,從而決定執行不同的命令,有3中格式
a. if "參數" == "字串" 待執行的命令
-----if "2"=="2" echo 2=2
b. if exist 檔案名稱 待執行的命令
c. if errorlevel / if not errorlevel 數字 待執行的命令
for命令
---迴圈執行命令,指定變數要使用 %%variable
For /l %%i in(1,1,5) do @echo %%i
Pause ----輸出 1 2 3 4 5
errorlevel
---程式返回碼。
Echo %errorlevel%。每個命令運行結束,可以用這個命令列格式查看返回碼,用於判斷剛才的命令是否執行成功。預設值為0,一般命令執行出錯會設為1
Title
---設定cmd視窗的標題
Title Hello 可以看到cmd視窗的標題變了
md
--建立檔案夾
Md d:\mp6 在d:\建立mp6檔案夾
組合使用命令
1.&(and) 第一條命令 & 第二條命令 [& 第三條命令...]
用這種方法可以同時執行多條命令,而不管命令是否執行成功
2.&& (short circuit and)第一條命令 && 第二條命令 [&& 第三條命令...]
用這種方法可以同時執行多條命令,當碰到執行出錯的命令後將不執行後面的命令,如果一直沒有出錯則一直執行完所有命令;
3.|| (or)第一條命令 || 第二條命令 [|| 第三條命令...]
用這種方法可以同時執行多條命令,當碰到執行正確的命令後將不執行後面的命令,如果沒有出現正確的命令則一直執行完所有命令;
批處理中的特殊符號
@,>,>>,|,^,&,&&,"",,,;,
變數
@echo offrem hello worldecho echo hello world::call calc.exerem 設定變數set var=1234 rem 輸出變數echo %var% pause
參考 :windows批處理命令教程