You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Exchange PowerShell GUI:如何正确获取邮箱大小并存入变量?

解决PowerShell获取邮箱大小并存入变量的问题

你的问题出在使用了ft(Format-Table)命令——它的作用是生成供人阅读的格式化输出,返回的是格式化对象而非原始的大小数据,所以赋值给文本框时会显示一堆参数列表。正确的做法是直接提取TotalItemSize的具体值:

方案1:获取带单位的友好显示字符串

如果需要直接显示类似2.5 GB或1200 MB的格式,用以下代码:

$MailboxSize = (Get-MailboxStatistics info).TotalItemSize.Value.ToString()
$lbMailboxSize.Text = $MailboxSize

方案2:获取数值并自定义单位

如果需要统一单位(比如全部转为GB),可以先获取字节数再转换:

# 获取原始字节数
$totalBytes = (Get-MailboxStatistics info).TotalItemSize.Value.ToBytes()
# 转换为GB并保留两位小数
$gbSize = [math]::Round($totalBytes / 1GB, 2)
# 赋值给文本框,带上单位
$lbMailboxSize.Text = "$gbSize GB"

关键说明

Get-MailboxStatistics返回的TotalItemSize是一个ByteQuantifiedSize类型的对象,需要通过.Value访问其实际大小数据,再用ToString()或ToBytes()等方法转换成需要的格式。注意避免使用格式化命令(ft/Format-Table、fl/Format-List)来获取数据,这些命令只适合终端输出,不适合赋值给变量。

内容的提问来源于stack exchange,提问作者user18965014

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 05:34:50