Windowsコマンド虎の巻

バッチ基礎

Windowsバッチの基礎知識です。

Windowsバッチの例

test.bat

@echo off setlocal set x=123 echo %x% endlocal exit /b 0

(実行例)

c:¥>test.bat 123

各行の解説

  1. @echo off:各コマンドの実行結果を表示しない。バッチファイルの1行目にはほぼ必須のコマンドです。
  2. setlocal:環境変数のローカル化開始。これをやっておくとバッチ内で設定した環境変数はバッチ外に影響を及ぼしません。
  3. set x=123:環境変数xに123を代入
  4. echo %x%:環境変数xの値を画面に表示
  5. endlocal:環境変数のローカル化終了
  6. exit /b 0:バッチの実行を、終了コード0にて終了

endlocalは省略しても暗黙的に実行されます。

備考

  • バッチファイルの拡張子は、.batまたは .cmdを使用します。
  • 文字コードはSJIS (Shift-JIS)で作成します。
  • 上のサンプルでも記述してある @echo offsetlocalは、基本的にバッチファイルお決まりの記述です。

「@」アットマーク

バッチプログラム内において、コマンドの先頭に「@」を付けると実行するコマンドの文字列が非表示になります。

例)@なしの場合

(aa.bat)

echo off echo abc

実行例

c:¥>aa.bat c:¥>echo off abc c:¥>

@なしだと、実行したコマンドが表示されます。

例)@ありの場合

(aa.bat)

@echo off echo abc

実行例

c:¥>aa.bat abc c:¥>

@なしだと、実行したコマンドが表示されません。