bat/cmd

はじめてのバッチファイル作り方 かんたん解説

バッチファイル入門

こんにちは!Windowsにはコマンドプロンプトというコマンドラインツールが標準装備されていますが、よりWindowsを便利に使うために今回はバッチファイルの作成方法をご紹介します。これを使えるようになると1歩だけインフラエンジニアに近づけます。

はじめてのバッチファイル作り方 かんたん解説

「バッチファイル」とは!?

いったいバッチファイルとは何なのか!?という方のために簡単にまとめました。

バッチファイルとは!?
  • 拡張子は「.bat」
  • Windows環境で実行できるコマンドを記述したテキストファイル
  • コマンドプロンプトで実行できるコマンドをまとめて書いたファイル
  • バッチファイルの処理とは複数のコマンドを一行ずつ上から順次実行する

バッチファイルに上からコマンドを書いていけば、その順番で1行ずつ実行されます。頻繁に使う処理をバッチファイルに記述しておけば、バッチファイルを1クリックするだけでその処理を実行できます。

バッチファイルの作成方法

「Windows」キー + 「R」キー を押してファイル名を指定して実行を開きます。notepadと打ち「OK」をクリックします。

ファイル名を指定して実行 メモ帳

②メモ帳が開くので、下記のコードをコピーしてメモ帳に貼り付けます。(コード解説は下記で説明)

@echo off
color 1f
echo ■■■■■■■■■■■■■
echo はじめてのバッチファイル
echo ■■■■■■■■■■■■■
echo.
echo.
rem コンピュータ名の表示(hostname)
echo ———————-
echo コンピュータ名
hostname
echo ———————-
echo.
echo.
pause

はじめてのバッチファイル

③「ファイル」>「名前を付けて保存」します。

バッチファイル保存方法

④ファイルの保存方法は下記の手順で保存します。

  1. ファイル名   「〇〇.bat」とする
  2. ファイルの種類 「すべてのファイル」とする
  3. 文字コード   「ANSI」とする 
バッチファイル保存方法

文字コードを指定しないと文字化けした状態でechoコマンドが表示されますので気を付けましょう。

⑤ファイルの保存が完了すると歯車マークのアイコンが作成されます。作成されたファイルをダブルクリックします。

バッチファイル作り方

⑥下記の画面のコマンドプロンプトが開きます。バッチファイルに記述した文や命令が表示されてます。(コンピュータ名はwinnote)

上記はWindowsコマンドの命令としてはhostnameだけの表示でしたが、複数コマンドを追加することで順次実行していきます。コマンドプロンプトで実行できるコマンドはすべてバッチファイルに記述することが出来ます。

下記の記事でファイル名を指定して実行コマンドで呼び出せるアプリケーション一覧を紹介しています。もちろんコマンドプロンプトでもバッチファイルでも利用可能です。

バッチファイル コード解説

ここからは上記のバッチファイルの内容を解説します。実は、さきほどのバッチファイルで記述したコマンドは下記の6種類のみです。コマンドは覚えられないほど処理があるのですが今回はこの6種類の処理から覚えていきましょう!

バッチファイルコード
  1. @echo off …コマンドの画面表示を消す
  2. color …コマンドプロンプトの色を指定
  3. rem …バッチファイルのコードコメント(処理に影響しない)
  4. echo …画面に表示させる文字列
  5. hostname …コンピュータ名を表示する(Windowsコマンド)
  6. pause …処理を一時停止する
バッチファイル作成方法-1

@echo off とは?

バッチファイル実行時の「コマンドの画面表示を消す」コードです。大体はバッチファイルの最初の1行目に@echo offと記述します。1行目を@echo onにして実行すると下記のようにc:\>やコメントの remまで表示されて非常に見づらくなります。

バッチファイルの途中で@echo on@echo offを記述することで必要な場合だけ「コマンドの画面表示を消す」「コマンドの画面表示を表示する」ことが可能になります。

Color コマンドとは!?

colorコマンドはその名の通りコマンドプロンプトの色を指定できるコマンドです。今回はcolor 1fとすることで背景色が青文字色が白のコマンドプロンプト表示となっています。Colorコマンドの詳しい解説は下記の記事から確認ください。

コマンドプロンプト色変更
コマンドプロンプトの色 コマンドで変更する備忘録こんばんは、コマンドプロンプトといえば黒画面に白文字の画面がデフォルト設定ですが設定で自由に画面色と文字色を変えることが出来ます。ネットワークエンジニアやサーバーエンジニアなら複数のコマンドプロンプトを開く場面が多いかと思います。...

rem コマンドとは!?

remコマンドはコメントを記述することができるコードです。rem コマンドはバッチ処理には影響はなくコメントとして記述できます。コメントをつけることでバッチファイル修正時などに作業者がコード内容が解りやすくなります。長い構文や複雑なバッチファイルを作成した際はrem でコメントすることをお勧めします。

わたしはよくバッチ処理検証時に、remで行のコメントアウトをして無効/有効を切り替えて使用しています。

echo コマンドとは!?

echoコマンドは「画面に表示される文字列」を指定します。echo “文字列”とすることで画面に文字列が表示されます。echo.とすると「画面に何も表示せず改行」します。

先ほどの「バッチ処理画面」と「コード」を比較しました。コードで書いたechoの行がコマンドプロンプトに表示されます。

echo より後ろの文字列が表示されているのが確認できるかと思います。echo.の行は改行されているのも確認ができます。

Windows コマンドの実行

続いてWindowsコマンドの実行です。hostnameコマンドはコンピュータ名を表示するコマンドです。その他にメモ帳EXCELなどのアプリケーションを指定して開くこともできます。ipconfigpingなどの通信確認コマンドの処理などもすべて記述できます。

バッチ処理は1行目から随時実行していくためマルチタスク(同時実行)で行なうことは出来ません。1つの処理が終わるまでは次の処理は実行されません。

pause コマンドとは

pauseコマンドは処理の一時停止をするコマンドです。今回のバッチファイルコードの最後の行にpauseを記述したのはhostnameの結果でコンピュータ名を確認するためです。pauseコマンドを記述しないとバッチ処理が一瞬で終わるため人間の目ではコンピュータ名が確認できません。

バックグラウンドでバッチ処理を実行したい場合はpauseコマンドは記述しないでよいかと思います。

わたくしはバッチ処理検証時は、pauseコマンドを複数個いれて処理を一時停止させています。処理を一時停止することでバッチ処理がどこまで成功しているかが目視確認が出来ます。

はじめてのバッチファイル作り方 まとめ

プログラムコードを見慣れていない方にはバッチファイルの内容は複雑に見えるかもしれませんが、1行ずつ実行するので少し覚えればバッチファイル作成が出来ます。バッチファイル1つのクリックでWindowsの処理を実行することが出来るので作業が楽になります。

バッチファイルをタスクスケジューラーに登録しておけば決まった時間にバッチ処理実行することが可能です。毎日決まった時間にバックアップを取ったりすることが出来ます。

バッチファイル作り方 まとめ
  • バッチファイルの拡張子は〇〇.bat
  • バッチファイル保存時文字コードはANSI
  • コマンドプロンプトで利用可能なコマンドは全てバッチ処理可能
  • コマンド命令は1行ずつ随時実行される
  • echo で画面上に文字列を表示する
  • remコマンドでコメントアウトが可能
  • pauseコマンドで処理を一時停止が出来る

駆使すれば簡易アプリケーションを作れますので、覚えていて損はないです。また計算式や他のバッチファイルを呼び出したりもできます。

思ってたよりも奥が深いのでバッチファイルを考えて試行錯誤しバッチ処理が成功すると楽しいですよ!それではー!

ABOUT ME
なお
フルスタックエンジニアを目指すサラリーマン。インフラ、WEBを中心に色んなIT関連情報に手を出したいと思います。
ブログランキング

COMMENT

メールアドレスが公開されることはありません。

CAPTCHA