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

<h2><span id=".E5.8F.83.E8.A6.8B"></span><span id="參見">參見</span></h2>
<ul><li>批次處理任務</li>
<li>Windows PowerShell</li></ul>
**批次檔**（英語：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 圖檔的解析度）。 而這類批次處理語言也大多提供把一系列操作錄製為批次檔的功能，這樣使用者不必寫程式就能得到批次程式。

## 參考資料

## 參見

* 批次處理任務
* Windows PowerShell
.cmd