この記事は以前 http://blog.hiros-dot.net/ に書いたものです。
foreachはコレクションに含まれるすべての項目を順番に処理します。構文は次の通りです。
foreach ( 変数 in コレクション )
{
実行するスクリプト
}
よく知られたコレクションの一つに配列があります。下記は配列変数$weekday
から値を1つずつ取り出して表示します。
$weekdayには値が5つ格納されているので5回ループし、"Mon"から順番に値を取り出して変数$wに代入し、Write-Hostコマンドレットでコンソールに出力します。
PS > $weekday = "Mon","Tue","Wed","Thu","Fri" PS > foreach ($w in $weekday) >> { >> Write-Host $w >> } >> Mon Tue Wed Thu Fri
もう1つ例を示します。
下記はGet-Serviceコマンドから返される項目でStatusが「Running」になっているサービス名を表示します。
Get-Serviceコマンドレットでローカルコンピュータ上のサービスを取得し、その結果の1つ1つを$sに取り出しながらループを行います。
PS > foreach ( $s in Get-Service ) >> { >> if ($s.Status -eq "running") >> { >> Write-Host $s.ServiceName >> } >> } >>
コメント