about_While
適用対象: Windows PowerShell 2.0, Windows PowerShell 3.0
トピック
about_While
概要
条件テストの結果に基づいてコマンド ブロックを実行するために使用できる言語ステートメントについて説明します。
詳細説明
While ステートメント (While ループとも呼ばれます) は、条件テストが true に評価される限りコマンド ブロック内のコマンドを実行するループを作成するための言語コンストラクトです。While ステートメントは、構文が簡単なため、For ステートメントよりも構築しやすくなっています。また、While ステートメントは、ステートメント内で条件テストを指定してループの実行回数を制御できるため、Foreach ステートメントよりも柔軟性に優れています。
While ステートメントの構文は次のとおりです。
while (<condition>){<statement list>}
While ステートメントを実行すると、Windows PowerShell® はステートメントの <condition> セクションを評価してから、<statement list> セクションに移ります。ステートメントの条件部分は、true または false のいずれかに解決されます。条件が true である限り、Windows PowerShell は <statement list> セクションを再実行します。
ステートメントの <statement list> セクションには、ループに入るたびに、またはループが繰り返されるたびに実行される 1 つ以上のコマンドが含まれます。
たとえば、次の While ステートメントは、$val 変数が作成されていない場合、または $val 変数が作成されて 0 に初期化されている場合には、1 から 3 の数字を表示します。
while($val -ne 3)
{
$val++
Write-Host $val
}
この例では、$val = 0、1、または 2 である間は、条件 ($val が 3 と等しくない) が true になります。ループを通過するたびに、$val は ++ 単項インクリメント演算子 ($val++) を使用して 1 ずつ増やされます。最後のループの通過で、$val = 3 になります。$val が 3 に等しくなると、条件ステートメントが false に評価され、ループが終了します。
このコマンドを Windows PowerShell コマンド プロンプトで簡単に記述するには、次のように入力できます。
while($val -ne 3){$val++; Write-Host $val}
$val に 1 を追加する最初のコマンドと、$Val の値をコンソールに出力する 2 番目のコマンドを、セミコロンで区切っていることに注意してください。
関連項目
about_Comparison_Operators
about_Do
about_Foreach
about_For
about_Language_Keywords