cmdのforやif内値代入!setできない原因は遅延環境変数! | 自作PCテクニカルセンター (jisakupc-technical.info)
バッチファイルの式の評価がいつ行われるかの仕様の問題です。
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
お世話になります。
以下のバッチファイル(本当にやりたいことはもっと別ですが単純化して確認)が正常に動作せず困っております。
%%nは1からのカウント
%m%と%l%は、%%nをもとに計算
1回目の実行では、
%%nはカウントアップするけれど%m% %l%は空白
ctrl+cで中断して
2回目以降
%%nはカウントアップするけれど
%m% %l%は、固定値(中断したところの値?)が表示される
やりたいことは、カウントアップしながら自~至のパラメータを変えて別のexeを繰り返し実行したいのですが
カウントアップの段階でうまくいかない状況です。
以下テストバッチファイル
----ここから
@echo off
for /l %%n in (0,1,100) do (
timeout /nobreak 1
SET /a m=%%n+1
SET /a l=%%n+0
echo n = %%n
echo m = %m%
echo l = %l%
)
----ここまで
ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。
cmdのforやif内値代入!setできない原因は遅延環境変数! | 自作PCテクニカルセンター (jisakupc-technical.info)
バッチファイルの式の評価がいつ行われるかの仕様の問題です。
ウィンドウズスクリプトプログラマ様
call でコマンドも実行できるのですね。
勉強になりました。
ありがとうございます。