檔案名稱是由檔案路徑和檔案名稱合起來的,如C:\DOS\COMMAND.COM。
DIR 顯示檔案和檔案夾(目錄)。
用法:DIR [檔案名稱] [選項]
它有很多選項,如/A表示顯示所有檔案(即包括帶隱含和系統屬性的檔案),/S表示也顯示子檔案夾中的檔案,/P表示分屏顯示,/B表示只顯示檔案名稱,等等。
如 DIR A*.EXE /A /P
此命令分屏顯示當前檔案夾下所有以A開頭尾碼為EXE的檔案(夾)。
CD或CHDIR 改變當前檔案夾。
用法:CD [檔案夾名]
若無檔案夾名則顯示當前路徑。
MD或MKDIR 建立檔案夾。
用法:MD 檔案夾名
RD或RMDIR 刪除檔案夾。
用法:RD 檔案夾名
注意:此檔案夾必須是空的。
DEL或ERASE 刪除檔案。
用法:DEL/ERASE 檔案名稱
COPY 拷貝檔案。
用法: COPY 檔案名稱1 [檔案名稱2] [選項]
如 COPY /B A+B C
此命令將兩個二進位檔案A和B合為一個檔案C。
TYPE 顯示檔案內容。
用法:TY可攜式執行檔名
REN或RENAME 改變檔案名稱和檔案夾(目錄)名。
用法:REN 檔案(夾)名1 檔案(夾)名2
EDIT 編輯檔案,在MS-DOS 7.x中還可以編輯二進位檔案和多個檔案。
用法:EDIT [檔案名稱] [選項]
如 EDIT /70 C:\COMMAND.COM
此命令以二進位方式編輯C:\COMMAND.COM檔案。
FORMAT 格式化磁碟。
用法:FORMAT 磁碟機 [選項]
它的選項很多,如/Q是快速格式化,/U表示無條件式格式設定化(即無法使用UNFORMAT等命令恢複),/V指定磁碟的卷標名,等等。它還有許多未公開參數。
MEM 顯示記憶體狀態。
用法:MEM [選項]
它的選項也有不少,如/C可列出所有程式的記憶體佔用,/D是顯示駐留記憶體的程式及裝置驅動程式的狀態等詳細資料,/F顯示閒置記憶體總量,/M顯示記憶體中的模組資訊,/P則是分屏顯示。還有隱藏的/A選項,可以顯示HMA資訊。
MOVE 移動檔案或檔案夾,還可以變更檔或檔案夾的名稱。
用法:MOVE 檔案[夾]1 檔案[夾]2
如 MOVE C:\*.EXE D:
此命令可以將C盤根資料夾下所有副檔名為EXE的檔案移到D盤上。
XCOPY 複製檔案或檔案夾。
用法:XCOPY 檔案[夾]名1 [檔案[夾]名2] [選項]
它的選項非常多,如/S可拷貝整個檔案夾(包括子檔案夾)中的檔案,/E指定包括空檔案夾,/V表示複製完後檢驗複製出的檔案的正確性,/Y表示確認,等等。
CLS 清除螢幕。
用法:CLS
SYS 傳導系統,即將系統檔案(如IO.SYS等)從一處傳輸到指定的磁碟機中。
用法:SYS 檔案夾名 [磁碟機]
如 SYS C:\DOS A:
此命令即可將位於C:\DOS檔案夾下的系統檔案傳輸到A盤中。
DATE 顯示或設定日期。
用法:DATE [日期]
TIME 顯示或設定時間。
用法:TIME [時間]
DOS還內建一些其它的命令,如SORT(排序),FIND(尋找字元)等。
@:將這個符號放在批檔案中其它命令的前面,運行時將不顯示命令本身。
如@ECHO OFF命令就在批檔案首經常用到。
CALL:從一個批檔案中調用另一個批檔案,調用完後繼續執行原來的批檔案。
用法:CALL [批檔案名稱]
註:也可以使用COMMAND /C命令完成同樣的操作。
CHOICE:選擇命令。這是一個DOS外部命令,但它主要用在批檔案中。
CHOICE命令執行後將提示可選擇的項目,這時通過一個按鍵來選則。
用法:CHOICE:[/C[:]按鍵表] [/N] [/S] [/T[:]選擇值,秒數] [顯示文本]
其中,/C表示可選則的按鍵,/N表示不要顯示提示資訊,/S表示大小寫字元敏感方式,/T表示若在批定的時間內沒有選則的話,自動執行/C中定義的某個選擇值。顯示文本是CHOICE命令執行時的提示資訊。選擇結果將用ERRORLEVEL值來表示。
ECHO:顯示指定的資訊。通常顯示在螢幕上。
如ECHO Hello將在螢幕上顯示Hello的字樣。
另外,ECHO ON|OFF用來設定在批檔案執行時是否顯示命令本身。而ECHO OFF與@的意思一樣,但它是一個單獨的命令,而不能像@那樣放在其它命令之前。
FOR:對於指定的檔案運行相應的命令。
大家知道,DOS下許多命令支援萬用字元,如?和*,可以一次指定一批檔案,非常方便。然而,並非所有的DOS命令都支援萬用字元,如TYPE(檔案內容顯示命令)就不支援。有了FOR命令就沒有關係了,利於它可以使TYPE命令可以一次顯示多個檔案。
用法:FOR %變數名 IN (檔案集) DO 命令 [命令參數]
註:以上是FOR命令的固定形式,IN和DO的位置必須正確,否則將提示法錯誤。
如FOR %F IN (*.*) DO TYPE %F命令就可以實現TYPE命令一次顯示多個檔案。
註:%F是變數名,也可用%G等代替,但前後必須一致。在批檔案中用%%F代替。
GOTO:轉到批檔案內部的某個標號下執行。
大家知道,在編程中往往需要重複或跳轉到某個地方繼續執行,如BASIC語言中的GOTO命令。批檔案中的GOTO命令也可以完成類似的功能。
用法:GOTO [標號名]
其中,標號名是可以隨意設定的,如Hello等。設定標號用“:”符號,如“:Hello”,這時用GOTO Hello命令將轉到“:Hello”所在的位置繼續執行批檔案。
IF:條件判斷命令。這是一項很有用的批處理命令。
用法1:IF [NOT] EXIST 檔案名稱 命令 [命令參數]
意義:如果[不]存在某個檔案將執行某個命令。
用法2:IF [NOT] ERRORLEVEL 錯誤返回代號 命令 [命令參數]
意義:如果錯誤返回代號[不]大於或等於指定的代號將執行某個命令。
其中,ERRORLEVEL表示錯誤返回代號,很有用。對於很多DOS命令,由於執行的結果不同(如執行成功,執行失敗,或被使用者中斷等),這些命令會返回不同的代號,以表示不同的結果。IF ERRORLEVEL命令就根據這個不同結果而產生的不同代號來執行不同的命令,通常用在某條命令之後。如IF ERRORLEVEL 1 ECHO OK!表示如果當前的錯誤返回代號大於或等於1時將在螢幕上顯示“OK!”的字樣。
用法3:IF [NOT] 字串1==字串2 命令 [命令參數]
意義:當字串1和字串2[不]相等的時候執行某個命令。
PAUSE:暫停批檔案的執行,並顯示“按任意鍵繼續”的字樣。
REM:添加註解。用於增加檔案可讀性,將不被執行。也可以用::來代替。
SHIFT:在批檔案中改變可替換參數的位置。
可替換參數是一種特殊的參數,只能用在批檔案中。這些參數是由使用者在執行批處理命令時輸入的。比如,我們執行DIR /S /W命令,其中DIR是命令名,/S和/W是它的執行參數。在批檔案中,這些命令參數將被分別賦予到可替換參數中,如/S就成的%1,/W就可了%2,以至類推,而命令本身則被賦予%0中。批檔案就是利用可替換參數對執行時輸入的參數來進行操作的。比如現在有個批次檔叫MYFILE.BAT,在命令列下執行MYFILE.BAT YES,於是%0的值就是MYFILE.BAT,%1的值就是“YES”,可以在此批檔案中用IF等命令判斷出%1等參數的值,然後根據這些值的不同執行不同的操作,如IF "%1"=="YES" GOTO YES。
SHIFT命令不帶任何參數,執行結果是將%0的值換成原%1的值,而原%1的值變成的原%2的值,以此類推。注意它的無法復原轉性。因為批次檔執行時的運行參數可能很多,可能會超過10個,而可替換參數只能從%0到%9,若想取得%9以後的參數值,只能使用SHIFT命令。這時,整個參數列將向前推。
以上是DOS的內建批處理命令,可以看出,這些命令是非常少的,若要編寫較複雜的程式,用以上的命令顯然不可能實現。這時就需要其它實用的批處理工具了,著名且實用的有TESTIF,STRING,ASET,BATCHMAN,WBAT等。在批次檔中使用以上的工具可以實現非常強大的功能,甚至可以完成許多進階語言程式的功能。