※この記事は「2025年6月4日」に更新しました。
- Windowsユーザーで、決まった作業を効率化したい
- 昔から使われているコマンドを詳しく知りたい
- 黒い画面でどんなことができるか気になる
上記のような方へ、バッチファイル作成方法を解説します。

コマンドプロンプトは、そこまで難しいものではありません。
バッチファイルは、MS-DOS時代の遺物のようなものと考えている人もいるかもしれません。
AI が普及した現代でも、アイデア次第で十分使えます。
高スペックなパソコンも必要ありません。
興味のある方は、参考にしていただけると嬉しいです。

- 基本情報技術者資格所有者(ソフト開発の国家資格)
- WordPress歴、10年以上
- Withマーケ会員(2022年10月入会)
目次
バッチファイルとは

バッチファイルとは、コマンドをあらかじめテキストとして並べて書いておき、先頭から順番に実行するためのものです。
わざわざ手動でコマンドを入力しなくても、順番に実行してくれます。
MS-DOS が使われていた頃の簡単なプログラム機能です。
その後、使いやすいように進化もしています。
条件判断や繰り返し、変数を使ったり、キー入力の受付もできます。

現在は、便利なプログラミング言語がいくらでもあります。
- JavaScript
- Ruby
- Python
- PHP
- C++
- C#
本格的なものを開発する場合、これらのプログラミング言語を使った方が効率的です。

バッチファイル作成方法
バッチファイルの作成方法を紹介します。
テキストエディタ(メモ帳など)でコマンドを並べていきます。
@echo off echo テストです。 echo; echo バッチファイルです。 echo; echo コマンドが並んでいます。 pause > nul

ファイル名.bat
実行ファイルと同じようにダブルクリックして実行してみます。
すると、以下のような実行結果が得られます。

バッチファイルでよく使うコマンド
バッチファイルでよく使うコマンドです。
- echoコマンド
- pauseコマンド
- remコマンド
- setコマンド
- ifコマンド
- forコマンド
それぞれ解説します。
echoコマンド
echoコマンドは、画面にテキストを表示するためのものです。
バッチファイルでは、冒頭に以下の処理を記述するのが定番の使い方です。
@echo off

@ で echo off 自身も画面に表示しないようにしています。
ちなみに、基本のテキストを表示させる処理は、以下のように書きます。
echo タカフミブログ
pauseコマンド
pauseコマンドは、バッチファイル処理を一時停止するときに使います。
このコマンドを使わないと大抵の場合、あっという間に処理が終わってしまいます。
以下のような文言が表示され、一時停止します。
続行するには何かキーを押してください...

pause > nul
上記のようにすれば、コマンドの表示を非表示にできます。
直前に echoコマンドを使えば、任意のテキストで一時停止することができます。
remコマンド
remコマンドは、コメントを作成するためのコマンドです。
このコマンドを使って、まとまった処理の解説をしておくと、あとから見返したときにわかりやすくなります。
rem この行はコメントになる。
setコマンド
setコマンドは、環境変数を設定および表示させるためのものです。

環境変数に値を設定するには、以下のように書きます。
set 環境変数名=値
環境変数を削除するには以下のように書きます。
set 削除する環境変数名=
ちなみに、以下のように引数なしで setコマンドを使うと現在定義されている環境変数が一覧表示されます。
set
新しいソフトをインストールすると、そのソフトが環境変数を追加する場合もあります。
定義されている環境変数はユーザーによって異なります。
バッチファイルでよく使うのは、環境変数の値を参照することです。
%環境変数名%
例えば、環境変数の値を表示させるには以下のように書きます。
echo %環境変数名%
ifコマンド

基本的な形は、以下の通りです。
if 条件 成立したときのコマンド
例えば、以下のようにすれば、複数行のコマンドを記述することもできます。
if 条件 ( 成立したときのコマンド1 成立したときのコマンド2 成立したときのコマンド3 … )
条件には、文字列を比較したり、ファイルが存在するかどうかを記述することができます。
また、条件を満たさなかったときに別の処理を行いたい場合は以下のように書きます。
if 条件 成立したときのコマンド else 成立しなかったときのコマンド
こちらも同じように複数行のコマンドを記述することができます。
if 条件 ( 成立したときのコマンド1 成立したときのコマンド2 成立したときのコマンド3 … ) else ( 成立しなかったときのコマンド1 成立しなかったときのコマンド2 … )
詳しい使い方は、下記記事をご参照下さい。
forコマンド

for [オプション] %%変数 in 対象 do 処理
基本的な使い方は、以下の通りです。
- 指定した回数繰り返す
- ファイルを対象として繰り返す
バッチファイルの中では、かなり難しいコマンドです。
詳しい使い方は、下記記事をご参照下さい。
タスクスケジューラに登録する方法
タスクスケジューラは、Windows に標準で搭載されているアプリケーションです。
バッチファイルをタスクスケジューラに登録すれば、以下のようなことが可能です。
- 決まった時間に実行する
- パソコンを起動したときに実行する

詳しい使い方は、下記記事をご参照下さい。
最後に【バッチファイルを学ぶ価値】
バッチファイルを使う場面というのは、意外とあります。
例えば、バックアップを取りたいときにサクッと取ったり、複数フォルダをエクスプローラで開くのは、ほとんどの方が利用できるのではないでしょうか?
他にも工夫次第で、色々なことができるようになります。
近年の既存の関数やライブラリが揃った、プログラミング言語と比較すると古臭い感じは否定できません。

バッチファイルを作成してみて、もっと色々なことをやってみたいと思ったら、PowerShell や他のプログラミング言語を学習すると良いかと思います。