从每个O365用户收集邮箱属性所需的PowerShell脚本

时间:2018-09-13 17:08:44

标签: c# powershell

我需要一个(单个)Powershell脚本来从每个Office 365用户收集以下属性:

  1. DisplayName
  2. UserPrincipalName
  3. 转发地址
  4. ForwardingSmtpAddress
  5. DeliverToMailboxAndForward
  6. IsMailboxEnabled
  7. AutoReplyState
  8. InternalMessage
  9. ExternalMessage

数字1-6是从命令Get-MailBox获得的。数字7-9是从命令Get-MailboxAutoReplyConfiguration(对于单个用户)获得的。要为所有用户获得AutoReplyConfiguration,我们可以使用命令Get-MailboxGet-MailboxAutoReplyConfiguration的结果传送到Get-MailBox | Get-MailboxAutoReplyConfiguration中。

一旦有了Collection<PSObject> results,我们可以通过使用代码来遍历集合来收集属性,如下所示:

string displayName = (string) result.Properties["DisplayName"].Value;

我想要的是一种在一个脚本中收集所有上述9个属性的方法。到目前为止,我只能首先调用Get-MailBox,将结果收集到字典中,然后使用Get-MailboxAutoReplyConfiguration,收集结果,从字典中找到用户,然后应用其余属性。我需要调用脚本并在C#中收集结果。

将这两个动作组合为一个动作的目的是减少查询的总时间。如果这样做实际上不是更有效率,请告诉我,我将继续我当前的行动方针。谢谢!

0 个答案:

没有答案