power-shellも普及してきていますが
バッチファイルを利用している人は結構いるのではないでしょうか?
社内のフォルダに誰かが作ったバッチがあって
よく分からんけど、叩いてる
なんて人もいると思います。(私もそうです^^)
そういったバッチの中身はとんでもないことになってたりして
いきなり紐解くのは難しいです。
まずは基本に立ち返って、HelloWorldから始めてみましょう。
バッチファイルの作り方
1. テキストファイルを作成します
2. ファイル名を変更し、「ファイル名.bat」の形式にします
例)sample.bat
バッチファイルの実行方法は、ファイルをダブルクリックすることで
ターミナル画面が開き実行されます。
バッチファイルで文字を出力
echo [出力したい文字]
echo hello world pause
結果:
hello world
C:\Users\Shinmai\Documents\BatFileTest>pause
続行するには何かキーを押してください . . .
pause:実行終了後にコンソール画面を閉じないコマンド
pauseがなくてもコマンド自体は実行されているのですが
画面が一瞬で閉じてしまうので、pauseを入れて結果が確認できるようにしています。
バッチファイルで変数を使う
変数と聞いてピンとこない方は、下の部分を読んでみてください!
変数とは
一時的に文字列などのデータを保管できる機能です。
変数名をつけることで、後から何度でも使用できます。
1度変数に入れておけば、同じ物が使い回せるので
多くの人はこの機能を使って楽をしています。

変数を使うのがベターです。
よく分からない方は、とりあえずコピペでも良いです!
使い方
set 変数名=変数に入れる値
@echo off set str=hello world echo %str% pause
結果:
続行するには何かキーを押してください . . .
変数を使う場合は%変数名%とします
また、@echo offの意味ですが
コマンドラインを見やすくするものだと思ってもらえれば大丈夫です。
つけない場合、読み込んだ文字がすべてコマンドラインに出力されてしまい
非常に見づらくなります。
詳しく知りたい方はこのあたりを見てみてください

バッチファイルで繰り返し処理
forを使いループさせ、hello worldを繰り返し出力してみましょう
for構文をを正しく理解しようとすると
かなり複雑なため、今回は簡略化した形で紹介します。

初めの内は、分かるところから少しずつ理解していきましょう!
使い方
(初期値、増分、終了値)
の部分は %%i に対して適用されます
@echo off chcp 65001 set str=hello world for /l %%i in (1,1,5) do ( echo %%i回目%str% ) pause
結果:
2回目hello world
3回目hello world
4回目hello world
5回目hello world
Press any key to continue . . .
条件によって処理を変える
ifを使うことで、条件に一致している場合のみ
処理を行うことができます。
[実行したいコマンド]
) else (
[条件式を満たさなかった場合に実行するコマンド]
)
先ほどのforを使った例の少し変えて
3回目の繰り返しだけ、別の処理をするバッチを書いてみます。
@echo off chcp 65001 set str=hello world for /l %%i in (1,1,5) do ( if %%i==3 ( echo %%i回目 good morning ) else ( echo %%i回目%str% ) ) pause
結果:
2回目hello world
3回目 good morning
4回目hello world
5回目hello world
Press any key to continue . . .
3回目だけはifの中が実行され
それ以外はelseの中が実行されていますね
最後に
いかがだったでしょうか?
今回はバッチファイルの基本的な使い方を紹介しました。

読んで頂き、ありがとうございました!
コメント