0

所以基本上我有一个脚本:

$MailboxArray = New-Object System.Object

$MailboxArray | Add-Member -MemberType NoteProperty -value $mail.issuewarningquota -Name WarningQuota

以及 $mail:

$mail = get-mailbox -id $_

现在它在 For 循环中很好地获取 Exchange 中每个邮箱的信息,但我希望 IssueWarningQuota 输出在MB而不是GB.

我有一个 TotalItemSize 方法,其中:

TotalItemSize.value.ToMB()

但这对 IssueWarningQuota 不起作用/不会起作用,有什么办法吗?

4

2 回答 2

1

我不知道交换命令的语法,但如果 TotoalItemSize 是一个数字,PowerShell 非常擅长计算 MB 和 GB。

例子:

PS C:\> $number = 4294967296
PS C:\> $number / 1GB
4
PS C:\> $number / 1MB
4096

因此,只要它是 Int32 或 Double 之类的数字,您就应该能够对其执行类似操作以转换为 MB。

于 2013-03-27T00:28:10.090 回答
0
$MBXs = Get-Mailbox -Server Server01 -ResultSize unlimited |
 Where {$_.UseDatabaseQuotaDefaults -eq $false} 

 &{
 foreach ($MBX in $MBXs)
 {
  New-Object psobject -Property @{
   Displayname = $MBX.Displayname
   'WarningQuota (MB)' = ($MBX.IssueWarningQuota).Value.ToMB()
   'ProhibitSendQuota (MB)' = ($MBX.ProhibitSendQuota).Value.ToMB()
   'TotalItemSize (MB)' = (Get-MailboxStatistics $MBX).TotalItemSize.Value.ToMB()
   }
  }
 } | Select Displayname,'WarningQuota (MB)','ProhibitSendQuota (MB)','TotalItemSize (MB)'
于 2013-03-26T22:05:17.497 回答