名複: batches
批次檔(英語:Batch file),又稱批處理文件,在DOS、OS/2、Microsoft Windows中,是一種用來當成手稿語言運作程式的檔案。它本身是文字文件,其中包含了一系列讓具備命令列介面的直譯器讀取並執行的指令。它應用於DOS和Windows系統中,它是由DOS或者Windows系統內嵌的直譯器(通常是COMMAND.COM或者CMD.EXE)解釋執行。它相當於是類Unix系統下的Shell script。
在DOS及Windows 9x作業系統家族中,批次檔的副檔名為.bat。在OS/2及Windows NT作業系統家族,添加了.cmd這個副檔名。在其他作業系統中,批次檔可能具有不同的副檔名,例如,4OS,4OS2和4NT使用.btm副檔名。當執行批次檔時,shell程式會讀取檔案內容,之後通常是以逐行的方式,執行它的命令。其最簡單的例子,是逐行書寫在命令列中會用到的各種命令。也可以在批次檔後面加上更多種類的參數。更複雜的情況,需要使用if、for、goto、choice等命令控制程式的執行過程,如同C語言、Basic等高階語言一樣。如果需要實現更複雜的應用,利用外部程式是必要的,這包括系統本身提供的外部命令和第三方提供的工具或者軟體。批次程式雖然是在命令列環境中執行,但不僅僅能使用命令列軟體,任何當前系統下可執行的程式都可以放在批次檔中執行。
有些人認為批次處理語言的含義要比上面的描述更廣泛,還包括許多軟體內建的批次處理語言,如 Microsoft Office、Visual Studio、Adobe Photoshop 所內建的批次處理語言的功能,使用者可通過它們讓相應的軟體執行自動化操作(例如調整某個資料夾所有 PSD 圖檔的解析度)。 而這類批次處理語言也大多提供把一系列操作錄製為批次檔的功能,這樣使用者不必寫程式就能得到批次程式。