2013-10-08 147 views
0

为什么这段代码不能按totalitemsize排序邮箱?排序对象不能正常工作

Get-Mailbox | Get-MailboxStatistics | Sort-Object TotalItemSize -descending | ft DisplayName, TotalItemSize 

enter image description here

enter image description here

+0

你得到的输出是什么? – manojlds

+0

我发誓这个相同的代码已经在过去的工作。我错过了什么? – SMPLGRP

+4

看起来像是排序,但是它是按TotalItemSize的字符串表示排序的,而不是数字值。 – MrKWatkins

回答

0

做到这一点艾克这样的:

Get-Mailbox | Get-MailboxStatistics | 
Sort-Object { $_.TotalItemSize.VALUE.TOMB() } -descending | ft DisplayName, TotalItemSize 

没有客户订单,您排序使用字符串命令,而不是由大小。

+0

看到我最新附加的图片。 @ C.B。 – SMPLGRP

+0

@benknighthorse我已经在交易所2010年的广告作品上测试过它,也许你在不同的版本? –

+0

我不知道发生了什么,但这个命令曾经为我工作。我的Exchange服务器上的某些内容已更改。我仍在调查。 @ C.B。 – SMPLGRP

0

一个可能的解决方案刚刚在昨天发布到了PowerShell杂志#PSTip专栏。

http://www.powershellmagazine.com/2013/10/08/pstip-parsing-exchange-size-strings/

Get-Mailbox | Get-MailboxStatistics | 
select-object Displayname, @{Name=MBSize;Expression={[Microsoft.Exchange.Data.ByteQuantifiedSize]::Parse($_.TotalItemSize).ToMB();}}| 
Sort-Object MBSize -descending | ft DisplayName, MBSize 

,因为我没有一个Exchange环境的点,我不能这个考验自己。