バッチファイルは、Windows環境で一連のコマンドを自動化するための強力なツールです。繰り返し行う作業をスクリプトにまとめ、簡単に実行できるようにすることで、時間を節約し、作業効率を大幅に向上させることができます。
この記事では、バッチファイルを初めて書く人向けに、基本的な書き方について紹介します。
バッチファイルの基礎
バッチファイルは .bat の拡張子を持つテキストファイルです。作成するために特別なアプリケーションは必要とせず、Windows標準のメモ帳などのテキストエディタで作成・編集ができます。
バッチファイルをつくる
1.テキストエディタを開き、以下の内容をファイルに入力します。
@echo off
echo Hello, World!
pause
実際の画面は以下のようになります。
2.ファイルを「hello.bat」として保存します。
ファイルを名前を付けて保存します。保存が成功すると、エクスプローラ上にファイルが表示されます。
注意点
日本語を含むバッチファイルの場合、ファイルの文字コードは「ANSI」を選択してください。この設定がUTF-8の場合、日本語を扱うバッチファイルでは文字化けが発生する原因となります。
3.ファイルをダブルクリックして実行します。
上記のように表示されたら、バッチファイルの作成と実行は成功しました。
今回の例では、3行のコマンド(命令)は、それぞれ以下の役割を持っています。
- 1行目の @echo off により、コマンド自体の表示をオフにします。
- 2行目の echo により、画面にメッセージを表示します。
- 3行目の pause により、実行を一時停止してキー入力を待ちます。
バッチファイルを編集する
バッチファイルを編集するには、エクスプローラ上でファイルを右クリックし、右クリックメニューから「編集」を選択してください。メモ帳が開き、バッチファイルを編集できるようになります。
注意事項
バッチファイルをダブルクリックすると、バッチファイルが実行されてしまい編集することができません。バッチファイルを編集したい場合は、右クリックから編集を選択するか、お手持ちのテキストエディタにドラッグ&ドロップして開くようにしましょう。
基本的なコマンド
バッチファイルに書くことができるコマンドは沢山ありますが、その中でも基本的なコマンドについて紹介します。
- echo: テキストを表示します。
- pause: ユーザーからのキー入力を待ちます。
- set: 変数を設定します。
- if: 条件分岐を行います。
- goto: スクリプト内の特定のラベルにジャンプします。
変数の使用
バッチファイル内で変数を使用して、データを一時的に保存し、操作できます。
@echo off
set variable=Hello, World!
echo %variable%!
pause
このスクリプトでは、variableという変数にHello, World!を代入し、それをechoコマンドで表示しています。
条件分岐
ifコマンドを使用して、条件に応じて異なるアクションを実行できます。
@echo off
set /p userinput=番号を入力してください(1-2):
if %userinput%==1 echo You entered one.
if %userinput%==2 echo You entered two.
pause
ユーザーが入力した値に応じて異なるメッセージを表示します。以下は1を押した場合の例です。
番号を入力してください(1-2): 1
You entered one.
続行するには何かキーを押してください . . .
gotoとラベル
gotoコマンドを使用すると、指定したラベルにジャンプします。以下はgotoラベルにより処理位置を特定のラベルにジャンプさせる例です。
@echo off
goto label
echo この行は実行されない
:label
echo バッチファイル終了
pause
実行結果
バッチファイル終了
続行するには何かキーを押してください . . .
goto命令は、実際には条件分岐(if文)などとセットで使われることが多いです。詳細は、以下の記事をご覧ください。
まとめ
この記事では、はじめてバッチファイルを作成する人向けに、バッチファイルの基本的な情報を紹介しました。バッチファイルを使用した作業の自動化や効率化にお役立てください。