Powershell 获取电子邮件地址值交换
我正试图用一些有用的信息提供一个邮箱统计数据。我在下面使用这个,除了emailaddresses部分,其他都可以Powershell 获取电子邮件地址值交换,powershell,exchange-server,Powershell,Exchange Server,我正试图用一些有用的信息提供一个邮箱统计数据。我在下面使用这个,除了emailaddresses部分,其他都可以 $mailboxStatistics = $allMailboxes | foreach { $mailboxType = $_.RecipientTypeDetails $OU = $_.OrganizationalUnit $UPN = $_.UserPrincipalName $primaryEmail = $_.PrimarySmtpAddre
$mailboxStatistics = $allMailboxes | foreach {
$mailboxType = $_.RecipientTypeDetails
$OU = $_.OrganizationalUnit
$UPN = $_.UserPrincipalName
$primaryEmail = $_.PrimarySmtpAddress
$EmailAddresses = @{Name='EmailAddresses'; Expression={$_.EmailAddresses -join ","}}
Get-MailboxStatistics -identity $_.identity | Select-Object DisplayName,LastLogonTime,LastLogOffTime,ItemCount,TotalItemSize,@{label='MailboxType';expression={$mailboxType}},@{label='OU';expression={$OU}},@{label='UPN';expression={$UPN}},@{label='PrimarySMTP';expression={$PrimaryEmail}},@{label='EmailAddresses';expression={$EmailAddresses}}
}
输出为emailaddresses列提供此值。有人能告诉我怎么修理吗?
System.Collections.Hashtable,因为您已将其转换为hasttable:@{}。假设您需要逗号分隔的字符串,如果需要,下面的操作应该可以:
$mailboxStatistics = $allMailboxes | foreach {
$mailboxType = $_.RecipientTypeDetails
$OU = $_.OrganizationalUnit
$UPN = $_.UserPrincipalName
$primaryEmail = $_.PrimarySmtpAddress
$EmailAddresses = $_.EmailAddresses -join ","
Get-MailboxStatistics -identity $_.identity | Select-Object DisplayName,LastLogonTime,LastLogOffTime,ItemCount,TotalItemSize,@{label='MailboxType';expression={$mailboxType}},@{label='OU';expression={$OU}},@{label='UPN';expression={$UPN}},@{label='PrimarySMTP';expression={$PrimaryEmail}},@{label='EmailAddresses';expression={$EmailAddresses}}
}