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

PowerShell合并FSRM配额查询统计与详情为统一输出的问题咨询

PowerShell FSRM配额信息整合输出方案

你可以先一次性拉取所有配额数据避免重复查询,再将汇总值和明细整合输出,以下是两种常用实现方式:

方式1:明细表格末尾追加汇总行

所有信息集中在同一个表格内,可读性更强:

# 替换为你要查询的目标路径
$pfad = "你的目标路径"
# 一次性获取所有配额对象,避免重复调用接口
$allQuotas = Get-FsrmQuota -Path $pfad
# 计算总配额大小(单位GB,保留0位小数,和你原有逻辑对齐)
$totalSizeGB = [math]::Round(($allQuotas | Measure-Object -Property Size -Sum).Sum / 1GB, 0)

# 生成明细表格+末尾汇总行
$allQuotas | Select-Object Description, Path, 
    @{Label="Size GB"; Expression = { [math]::Round($_.Size / 1GB, 0) }},
    @{Label="PeakUsage GB"; Expression = { [math]::Round($_.PeakUsage / 1GB, 0) }},
    @{Label="Usage GB"; Expression = { [math]::Round($_.Usage / 1GB, 0) }} |
ForEach-Object { $_ } -End {
    # 追加汇总行
    [PSCustomObject]@{
        Description = "### 总配额汇总 ###"
        Path = ""
        "Size GB" = $totalSizeGB
        "PeakUsage GB" = ""
        "Usage GB" = ""
    }
} | Format-Table -AutoSize

方式2:汇总信息+明细表格分开输出

如果需要明确区分汇总和明细数据,可以用这种结构:

# 替换为你要查询的目标路径
$pfad = "你的目标路径"
$allQuotas = Get-FsrmQuota -Path $pfad
$totalSizeGB = [math]::Round(($allQuotas | Measure-Object -Property Size -Sum).Sum / 1GB, 0)

# 输出汇总信息
Write-Host "`n===== 指定路径FSRM配额总大小:$totalSizeGB GB =====`n"

# 输出明细表格
$allQuotas | Format-Table Path, Description,
    @{Label="Size GB"; Expression = { "{0:F0}" -f ($_.Size/1GB) }},
    @{Label="PeakUsage GB"; Expression = { "{0:F0}" -f ($_.PeakUsage/1GB) }},
    @{Label="Usage GB"; Expression = { "{0:F0}" -f ($_.Usage/1GB) }} -AutoSize

说明

两种方案都只调用了一次Get-FsrmQuota,比原脚本两次调用的执行效率更高,配额数量较多时差异更明显。如果需要调整数值保留的小数位数,修改Round方法的第二个参数即可,比如改为1就是保留1位小数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 23:54:04