今天同事讓我生成一個報表,列出用戶的主SMTP地址后綴是@aus.ddb.com的用戶。
Get-ADUser可以直接獲取相關信息,不過主SMTP是隱藏在ProxyAddress這個屬性里面的,如果1個用戶有多個郵件地址,大寫的SMTP的那個就是主地址。
腳本如下,獲取所有用戶的信息,然后創建一個空對象,對每一個對象的屬性進行處理,把對應的值放入對象, 最后過濾結果輸出。
$users = Get-ADUser -Filter {proxyAddresses -like '*'} -SearchBase "ou=sydney,dc=omnicom,dc=com,dc=au" -Properties proxyAddresses $pp=$null$pp=@{'name'=$null;'primarysmtp'=$null} $obj=New-Object -TypeName psobject -Property $pp $result=@() foreach($user in $users){ $primarySMTPAddress = "" foreach ($address in $user.proxyAddresses) { if (($address.Length -gt 5) -and ($address.SubString(0,5) -ceq 'SMTP:') ) { $primarySMTPAddress = $address.SubString(5) break } } $objtemp=$obj | select * $objtemp.name=$user.Name $objtemp.primarysmtp=$primarySMTPAddress $result+=$objtemp } $result | Where-Object{$_.primarysmtp -like "*aus.ddb.com*"} | sort Name
本文出自 “麻婆豆腐” 博客
|
新聞熱點
疑難解答
圖片精選