我正在尝试获取包含两列的 csv:UPN 和主 SMTP 地址。主 SMTP 地址位于 ProxyAddresses 属性中的其他地址中,并且是可识别的,因为 SMTP 全部大写,而次要地址全部小写。
到目前为止,这就是我所拥有的,它返回 ProxyAddresses 列中的所有 SMTP 地址,而不仅仅是带有 SMTP: 前缀的主地址
$licusers = gc .\licuser_trim.txt
FOREACH ($user in $licusers)
{
Get-MSOLUser -UserPrincipalName $user | Select userprincipalname, Proxyaddresses | ? {$_.ProxyAddresses -cmatch '^SMTP\:.*'}
}
最佳答案
删除Proxyaddresses
,它会覆盖{$_.ProxyAddresses -cmatch '^SMTP\:.*'}
的结果,或更改“|”到“,”。
试试这个:
Get-MSOLUser -UserPrincipalName $user | Select userprincipalname, @{e={$_.ProxyAddresses -cmatch '^SMTP\:.*'};name='Primaryaddress'},Proxyaddresses
或
Get-MSOLUser -UserPrincipalName $user| Select Proxyaddresses | select {$_.ProxyAddresses -cmatch '^SMTP\:.*'}
它将返回由大写“SMTP:”指示的主电子邮件地址。
关于powershell - 查询 Azure Active Directory 的 UPN 和主 SMTP 地址,然后导出到 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37422604/