Windowsバッチファイルの作成と実行



Windowsバッチファイル(Batch File)とは

バッチファイルとは、Windowsにおける複数処理(コマンド)を一括で実行する際に使われるプログラムファイルのことです。バッチファイルの中身は、基本的にはコマンドプロンプトで実行できるコマンドを1行ずつ明記したものとなります。バッチファイルでは、変数定義や条件分岐といった実行制御が可能となります。


バッチファイルの拡張子

バッチファイルのファイル拡張子は、「.bat」(Windows バッチファイル)または「.cmd」(Windows コマンド スクリプト)です。多くの場合、「.bat」が採用されます。

バッチファイル名.bat

なお、スクリプトに同じ名前を付けた場合は「.bat」が優先されます。優先順位は「PATHEXT」環境変数で確認できます。

PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC

バッチファイルの基本的な文法

規約


バッチファイルでHello Worldを作成する

バッチファイル「helloworld.bat」を作成し、以下を記述します。

@echo off

rem
rem コメント:バッチ処理の説明など
rem

REM 「Hello,World.」と表示する。
echo Hello,World.

rem 何らかのキー入力を待ち合わせる。
pause

rem 終了コードを設定して実行を終了します。
exit /b 0

終了と戻り値

バッチファイルで「exit」コマンドを使用すると、そのバッチファイルを実行しているコマンドプロンプトまで終了してしまう「強制終了」となります。

exit

あるバッチファイルが別のバッチファイル (親バッチファイル)から「call」コマンドで呼ばれた場合に、そのバッチ処理を終了した後で親バッチファイルに処理を戻すには「/b」オプションを指定する必要があります。

exit /b 
exit /b [終了コード]

Windowsバッチファイルの実行

バッチファイルの実行は、コマンドプロンプトからバッチファイル名を指定して実行します。例えば「helloworld.bat」を実行する場合には、以下の通りです。

c:¥> helloworld.bat

実行を強制中断するには

バッチファイルの処理を中断させる時は、「Ctrl+C」キーを押します。(コマンドプロンプトにおけるコマンド処理の中断操作と同様です。)


別バッチファイルの呼び出し

別バッチファイルの呼び出し方法は以下の2通りがあります。

1「call」コマンドを用いることで、バッチファイル内から別のバッチファイル (子バッチファイル) を呼び出すことができます。

call helloworld.bat

2「start」コマンドを用いると、別プロセスで実行されますので、先行コマンドの結果を待つこと無く実行します。

start test02.bat

そのままバッチファイル名をコマンドとして直接指定すると、上手く呼び出せない場合があります。


Windowsバッチファイルの引数

バッチファイルでは、コマンドオプションのように引数を渡すことが出来ます。渡された引数は「%1 から %9までの変数」として保存されます。 「%0」は実行中のバッチファイル名が保存されます。

@echo off
echo 実行ファイル: %0
echo 引数1 = %1
echo 引数2 = %2
echo 引数3 = %3

詳細はWindowsバッチファイル引数を参照下さい。


関連ページ



スポンサード リンク