@echo off set NUM=0 for /L %%i in (1, 1, 5) do ( set /A NUM=NUM+1 echo %NUM% )
実行結果 0 0 0 0 0
@echo off setlocal enabledelayedexpansion set NUM=0 for /L %%i in (1, 1, 5) do ( set /A NUM=NUM+1 echo !NUM! )
実行結果 1 2 3 4 5
- Windowsバッチファイルの変数は実行時に展開され値が割り振られる。
- "setlocal enabledelayedexpansion"を指定することにより、実行中に変数の値が展開される(遅延環境変数)。
- 遅延環境変数を表示するには!(変数名)!と記述する。