PowerShellコマンドレット虎の巻
HOME > PowerShell構文 > for構文

for構文

for構文は、ループ処理を行いたい時に使用します。

解説

for文は特定の回数だけコードブロックを繰り返し実行するためのループ構文です。

構文

(for構文)
for (<初期化>; <条件>; <反復処理>) { <実行するコード> }

※for文の各部分の詳細は以下です。

<初期化>
ループの開始時に一度だけ実行されるコード。
通常はループカウンタの初期化に使用します。
<条件>
各反復の前に評価される式。
この条件がTrueの間ループを継続します。
<反復処理>
各ループサイクルの終わりに実行されるコード。
通常はループカウンタの更新に使用します。

PowerShellでは、条件式に使用する比較演算子は一般的な記号(<、= など)は使用できません。
以下の表の比較演算子をご使用ください。

【比較演算子】
比較演算子記号説明
-eq=等しい
-ne<>等しくない
-lt<より小さい(未満)
-le<=以下
-gt>より大きい
-ge>=以上

サンプル

$iを0から始めて3以下になるまで1ずつ増やしながらループ処理を行う

for ($i = 1; $i -le 3; $i++) { Write-Output $i }

(結果)

1 2 3

ネストしたサンプル

for ($i = 0; $i -lt 3; $i++) { for ($j = 0; $j -lt 3; $j++) { Write-Host "i = $i, j = $j" } }

(結果)

i = 0, j = 0 i = 0, j = 1 i = 0, j = 2 i = 1, j = 0 i = 1, j = 1 i = 1, j = 2 i = 2, j = 0 i = 2, j = 1 i = 2, j = 2

配列$arrayの各要素を順番に出力する

$array = @("みかん", "りんご", "もも") for ($i = 0; $i -lt $array.Length; $i++) { Write-Host "Fruit: $($array[$i])" }

(結果)

Fruit: みかん Fruit: りんご Fruit: もも

備考

  • 大文字小文字は区別しないので、for、For、FORどのパターンで書いても問題ありません。
  • コレクションの各要素を順に処理したい場合は、foreach構文が便利です。

関連項目

  • PowerShell構文
  • if構文:条件分岐を行う
  • for構文:ループ処理を行う
  • foreach構文:コレクションの各要素に対して処理を行う
  • switch構文:特定の式の値に基づいて多分岐を行う
  • while構文:特定の条件が満たされている間、繰り返し処理を行う
  • do-while構文:少なくとも一度はループ内の処理を実行することを保証する