1

私が書いたスクリプトでは、$newUsers と $oldUsers の 2 つの配列にユーザー ID が既に入力されています。次の目標は、$newUsers のユーザー ID が $oldUsers に存在するかどうかを確認することです。はいの場合、ステートメント Write-Host "New User_id $rowNew found in Old user list" を表示します。 そうでない場合、Write-Host "New User_id $rowNew Notfound in Old user list" を表示します。

以下は、私が使用したロジックと私が得ている出力です。

foreach ($rowNew in $newusers){ 
           foreach ($rowOld in $oldusers){
                 if ($rowNew -ieq $rowOld){ 
                      Write-Host "New User_id $rowNew found in Old user list"
                 } else {
                   Write-Host "New User_id $rowNew Notfound in Old user list"   
                 }
            }
        }

- 結果

New User_id fadb274 found in Old user list
New User_id fadb274 Notfound in Old user list
New User_id fadb274 Notfound in Old user list
New User_id fadb274 Notfound in Old user list
New User_id fadb274 Notfound in Old user list
New User_id fadb274 Notfound in Old user list
New User_id fadb274 Notfound in Old user list
New User_id fadb274 Notfound in Old user list
New User_id fad8878 found in Old user list
New User_id fad8878 Notfound in Old user list
New User_id fad8878 Notfound in Old user list
New User_id fad8878 Notfound in Old user list

上記の結果が得られる理由がわかりません。ユーザー ID ごとに 1 つの結果を得る必要があります。上記のコードスニペットで何を変更する必要があるかについて、誰か助けてもらえますか?

4

1 に答える 1