【问题标题】:How can I pull Mail Contact groups for each contact with powershell?如何使用 powershell 为每个联系人提取邮件联系人组?
【发布时间】:2022-04-20 17:15:30
【问题描述】:

我正在尝试创建一个脚本来提取联系人组并将它们放入 Excel 工作表中。这是我目前所拥有的:

Import-Module ActiveDirectory
Get-ADUser -SearchBase "OU=XXXXX,OU=XXXXX,DC=XXXXXX,DC=DOM" -Filter * | foreach-object                                   {
write-host "User:" $_.Name -foreground green
Get-ADPrincipalGroupMembership $_.SamAccountName | foreach-object {
    write-host "Member Of:" $_.name
}
} | Export-Csv c:\tech.csv

这适用于用户帐户(出于某种原因导出除外),但不适用于联系人。

该脚本在运行时不会为发行版联系人组返回任何内容。我们有一个联系人列表,这些联系人是我们很可能不再需要的发行组的一部分。我通过powershell从远程计算机运行它,我想我可以使用这个脚本并将它指向特定的联系人OU。

我也在我们的 Exchange 服务器上尝试过这个:

Get-Contact | 
sort-object LastName | 
%{ Get-MailContact $_.DistinguishedName | select Name,Member,PrimarySMTPAddress } 

似乎没有“成员”属性。

【问题讨论】:

  • 嗨,欢迎来到 Stack Overflow!您能否在帖子中编辑更多细节以详细说明您的问题?例如,您是如何尝试对联系人执行此操作的,Export-CSV 究竟是如何失败的?它是错误的,还是没有输出您所期望的?这些细节使问题更容易解决,并且通常会更快地为您提供帮助。
  • 您好,谢谢,该脚本在运行时不会为发行版联系人组返回任何内容。我们有一个联系人列表,这些联系人是我们很可能不再需要的发行组的一部分。我通过powershell从远程计算机运行它,我想我可以使用这个脚本并将它指向特定的联系人OU。我只是在学习 powershell,所以对它真的很陌生。
  • 我也在我们的 Exchange 服务器 powershell 中尝试过这个:Get-Contact |排序对象姓氏 | %{ Get-MailContact $_.DistinguishedName | select Name,Member,PrimarySMTPAddress } 似乎没有“成员”属性

标签: powershell active-directory exchange-server contacts


【解决方案1】:

试试这个。 不是最佳的,但它有效。

get-distributiongroup | foreach {write-host ---------- $.samaccountname; get-distributiongroupmember -resultsize 无限制 $.samaccountname | {$_.RecipientType -eq "mailcontact"} |英尺名称}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-17
    • 2013-12-27
    • 1970-01-01
    相关资源
    最近更新 更多