如何使用 Powershell 获取房间邮箱报告

如何使用 Powershell 获取房间邮箱报告

我尝试运行此命令。它运行顺利,但“城市”和“国家/地区”字段未填写。我做错了什么?

Get-Mailbox -RecipientTypeDetails RoomMailbox -ANR 'de-' | Select DisplayName,RecipientTypeDetails,alias,PrimarySmtpAddress,City,Country | export-csv C:\Output\room-de2.csv

在此处输入图片描述

答案1

Get-Mailbox返回 Microsoft.Exchange.Data.Directory.Management.Mailbox 对象。如果你看看它的成员、城市和国家都不存在。

这两个都是 ADUser 类的(附加)成员。您需要在加载 ActiveDirectory 模块的 Powershell 会话中将 SamAccountName 属性从 Get-Mailbox 传递给 Get-ADUser。如果没有关于您的环境的更多详细信息,我无法建议您如何一次性完成此操作。但有一个多步骤方法。

如果您将 SamAccountName 添加到Select管道,则可以使用 CSV 来执行此操作。在域控制器上运行

Import-Csv <path_to_CSV> | ForEach-Object {Get-ADUser $_.SamAccountName} | select City,Country | Export-Csv <new_CSV_path>

然后,您可以将 Get-ADUser 输出 CSV 中的两个字段添加到 Get-Mailbox CSV

$Exch = Get-Content <path_to_CSV>
$AD = Get-Content <new_CSV_path>
for ($i = 0; $i -lt $AD.Length; $i++) {$Exch[$i].insert(($Exch[$i].Length), ",$($AD[$i])") | Out-File <path_to_combined_csv> -Append}

相关内容