about_While

簡単な説明

条件付きテストの結果に基づいてコマンド ブロックを実行するために使用できる言語ステートメントについて説明します。

長い説明

ステートメント while (ループとも while 呼ばれる) は、条件付きテストが true に評価される限り、コマンド ブロックでコマンドを実行するループを作成するための言語コンストラクトです。 ステートメント while の構文は複雑ではないので、For ステートメントよりも簡単に構築できます。 さらに、Foreach while ステートメントよりも柔軟です。ループの実行回数を制御する条件付きテストを ステートメントで指定します。

While ステートメントの構文を次に示します。

while (<condition>){<statement list>}

ステートメントを実行すると while 、PowerShell は、 セクション <condition> を入力する前に ステートメントの セクションを評価 <statement list> します。 ステートメントの条件部分は true または false に解決されます。 条件が true のままである限り、PowerShell は セクションを再実行 <statement list> します。 ブール値の評価方法の詳細については、ブール値の評価に関するページ about_Booleans

ステートメント <statement list> の セクションには、ループが入力または繰り返されるごとに実行される 1 つ以上のコマンドが含まれています。 には <statement list> 、 キーワードと キーワードを含む任意の有効な PowerShell ステートメント breakcontinue 含めできます。

たとえば、変数が while 作成されていない場合、または変数が作成され、0 に初期化されている場合、次のステートメントは 1 から 3 $val $val の数値を表示します。

while($val -ne 3)
{
    $val++
    Write-Host $val
}

この例では、条件 ( は$val 3 と等しくない) が true $val で、0、1、2 が等しくなります。 ループを通過するたび、 $val は、1 つのインクリメント演算子を使用して 1 ++ ずつインクリメントされます。 ループの最後の時刻が $val 3 に設定され、condition ステートメントが false に評価され、ループが終了します。

PowerShell コマンド プロンプトでこのコマンドを簡単に記述するには、次の方法で入力します。

while($val -ne 3){$val++; Write-Host $val}

セミコロンは、 に 1 $val $val を追加する最初のコマンドと、 の値をコンソールに書き込む 2 番目のコマンドから分離します。

関連項目