foreach(PowerShell 入門)

この記事は以前 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
>>   }
>> }
>>

コメント

タイトルとURLをコピーしました