コマンドプロンプトのバッチでよく見るenabledelayedexpansionの意味
enabledelayedexpansion
enable delayed expansion
は、遅延展開(実行時に変数を評価し、値を取得する)を有効にするオプションです。このオプションを有効にすると、!で囲まれた変数を展開する際に遅延展開が有効になります。
%x%ではなく!x!というように!で囲んだ変数を使用します。
この変数を遅延展開変数と言ったりします。
遅延展開変数の使い道
バッチファイルのfor文で使うケースがあります。
@echo off setlocal enabledelayedexpansion set var=0 echo %var% echo for start for %%i in (1,2,3) do ( set var=%%i echo !var! ) echo for end echo %var%
コマンドプロンプトでは遅延展開を有効にすることでforループ内の値を動的に取得することが可能になります。
実行結果です。
0 for start 1 2 3 for end 3
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント