簡単な説明
条件付きテストの結果に基づいてコマンド ブロックを実行するために使用できる言語ステートメントについて説明します。
長い説明
while ステートメント (while ループとも呼ばれます) は、条件テストが true に評価される限り、コマンド ブロックでコマンドを実行するループを作成するための言語コンストラクトです。
while ステートメントは、構文が複雑でないため、for ステートメントよりも簡単に構築できます。 さらに、foreach ステートメントで条件テストを指定してループの実行回数を制御するため、while ステートメントよりも柔軟性が高くなります。
while ステートメントの構文を次に示します。
while (<condition>){<statement list>}
while ステートメントを実行すると、<condition> セクションに入る前に、PowerShell によってステートメントの<statement list> セクションが評価されます。 ステートメントの条件部分は、true または false のいずれかに解決されます。 条件が true のままである限り、PowerShell は <statement list> セクションを再実行します。
ブール値の評価方法の詳細については、「 about_Booleans」を参照してください。
ステートメントの <statement list> セクションには、ループが入力または繰り返されるたびに実行される 1 つ以上のコマンドが含まれています。
<statement list>には、breakキーワードやcontinueキーワードなど、有効な PowerShell ステートメントを含めることができます。
たとえば、次の while ステートメントでは、 $val 変数が作成されていない場合、または $val 変数が作成されて 0 に初期化されている場合、1 から 3 までの数値が表示されます。
while($val -ne 3)
{
$val++
Write-Host $val
}
この例では、条件 ($val が 3 に等しくない) は true で、 $val は 0、1、2 です。 ループを経るたびに、 $val は、 ++ 単項インクリメント演算子を使用して 1 ずつインクリメントされます。 ループ $val の最後の時間が 3 に設定され、条件ステートメントが false に評価され、ループが終了します。
PowerShell コマンド プロンプトでこのコマンドを簡単に記述するには、次のように入力します。
while($val -ne 3){$val++; Write-Host $val}
セミコロンは、 $val に 1 を追加する最初のコマンドを、 $val の値をコンソールに書き込む 2 番目のコマンドから分離していることに注意してください。
こちらも参照ください
PowerShell