0

すべての配布リスト (動的を含む) のすべてのメンバーを出力する小さな powershell スクリプトを作成しました。

$output = ""
$DLList = get-distributiongroup
foreach ($DL in $DLList) {
    $Dmember=get-distributiongroupmember $DL
    $Dname=$DL.name
    write-output "$Dname"
$output += "$Dname`r`n"
    foreach ($Member in $Dmember) {
        $MName=$Member.DisplayName
        write-output "-$MName"
    $output += "-$MName`r`n"
     }
     write-output ""
 $output += "`r`n"
}
$DDLList = get-dynamicdistributiongroup
foreach ($DL in $DDLList) {
    $Dmember=get-Recipient -Filter $DL.RecipientFilter
    $Dname=$DL.name
    write-output "$Dname"
$output += "$Dname`r`n"
    foreach ($Member in $Dmember) {
        $MName=$Member.DisplayName
        write-output "-$MName"
    $output += "-$MName`r`n"
    }
    write-output ""
$output += "`r`n"
}
$output | Tee-Object -file data.txt

私の DL の 1 つにメール連絡先が含まれていることを除けば、これは正常に機能します。上記のスクリプトにそれらを含める方法はありますか?

ありがとう。

4

1 に答える 1

0

を使用しGet-ADObjectて連絡先を取得すると、そのMemberOf属性を照会できます。それはあなたが望むものとは逆ですが、うまくいきます。このスクリプトを使用して、-SearchBase値を見たい場所に変更するだけです。

Get-ADObject -Filter * -SearchBase "OU=Contacts, DC=domain, DC=com" \
-Properties * | ?{$_.MemberOf -ne $null} | Select DisplayName, MemberOf
于 2018-06-28T21:08:05.860 に答える