私はpowershellの初心者で、スクリプトを作成しようとしています。私はユーザーのリストを持っています。ユーザーがどの DL に追加されているかを知る必要があります。
私が直面している問題は、DL のリストのみが表示されることです。ユーザー名で DL を取得する方法はありますか? またはこれを達成するためのより良い方法。
注: すべての DL に大文字で名前を付けているため、where-object で "\b[A-Z0-9_]+\b" を使用しています。
$users = import-csv C:\Test\users.csv | ForEach-Object {$_.users = $_.users.Trim(); $_} | Select-Object -ExpandProperty users
foreach ( $user in $users)
{get-ADPrincipalGroupMembership $user | select name |
Where-Object { $_.name -cmatch "\b[A-Z0-9_]+\b"} | Export-CSV "C:\test\output_file.csv" -NoTypeInformation -Append
}
これで、次の結果が得られました。
Group1
Group2
Group3
Group2
Group3
Group4
私の理想的な出力は、次のようなものです。
User MemberOf
---- --------
Bob Group1, Group2, Group3....
Jim Group2, Group3, Group4....
どうもありがとう。