【发布时间】:2018-12-11 01:35:32
【问题描述】:
我编写了一些简单的 Exchange Powershell。我想将 UPN、显示名称、项目计数和项目大小列出到单个 CSV 中。但是,我只能成功地将数据推送到两个数组,然后手动组合它们。这是我的代码。
$MailBoxs = Get-Mailbox * | Select UserPrincipalName -ExpandProperty UserPrincipalName | Sort-Object UserPrincipalName
$Mailboxs2 = $MailBoxs.Where({ $_ -ne $null })
ForEach($MailBox2 in $MailBoxs2) { Get-MailboxStatistics $Mailbox2 | Sort-Object TotalItemSize –Descending | Select @{label=”User”;expression={$_.DisplayName}},@{label=”Total Size (MB)”;expression={$_.TotalItemSize.Value.ToMB()}},@{label=”Items”;expression={$_.ItemCount}} | Export-CSV "C:\T2\MailBoxSize.csv" -Append -NoTypeInformation }
ForEach($MailBox2 in $MailBoxs2) { $Mailbox2 | Export-CSV "C:\T2\MailBoxSize2.csv" -Append -NoTypeInformation }
基本上,第二个 CSV 出于某种原因给了我两个字段,即 SMTP 地址和一些随机长度字段,它还给了我一个前导空格。如果有人对如何清理这个有任何想法,我很想听听他们的意见。感谢您的宝贵时间。
【问题讨论】:
标签: arrays powershell active-directory exchange-server export-to-csv