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

Hyper-V中Get-VM命令字段疑问及关机虚拟机内存、磁盘信息查询

Hyper-V虚拟机内存与硬盘信息查询指南

嘿,你的理解完全没错——MemoryAssigned确实是运行中虚拟机当前实际占用的内存,关机状态的虚拟机因为没有运行,这个字段会返回0或者$null。要获取关机VM的配置内存、以及硬盘相关信息,咱们一步步来解决:

1. 获取关机虚拟机的配置内存

关机虚拟机的预设启动内存存储在MemoryStartup属性里,把它加到你的脚本里,就能同时看到运行/关机VM的内存配置了。修改后的脚本如下:

Get-Vm | Sort-Object Name | Select-Object Name, Uptime, 
    @{N="MemoryMB";E={$_.MemoryAssigned/1MB}},
    @{N="MemoryStartupMB";E={$_.MemoryStartup/1MB}}, # 关机VM的配置启动内存
    ProcessorCount, Status, 
    @{N="MemoryMaxMB";E={$_.MemoryMaximum/1MB}}
  • MemoryStartupMB:这个属性不管VM是否运行,都会返回它配置的启动初始内存大小,完美解决关机VM的内存查询需求。

2. 获取虚拟机的硬盘相关信息

Get-Vm本身不直接包含硬盘细节,需要结合Get-VMHardDiskDrive(获取挂载的硬盘路径)和Get-VHD(获取硬盘容量等参数)来实现。这里给你两种实用写法:

写法1:单硬盘VM的简洁查询

如果你的虚拟机都只挂载了一个硬盘,可以直接在计算属性里关联查询:

Get-Vm | Sort-Object Name | Select-Object Name, Uptime, 
    @{N="MemoryMB";E={$_.MemoryAssigned/1MB}},
    @{N="MemoryStartupMB";E={$_.MemoryStartup/1MB}},
    ProcessorCount, Status, 
    @{N="MemoryMaxMB";E={$_.MemoryMaximum/1MB}},
    @{N="VHDPath";E={($_ | Get-VMHardDiskDrive).Path}}, # 硬盘文件路径
    @{N="VHDSizeGB";E={
        if ($hd = $_ | Get-VMHardDiskDrive) {
            (Get-VHD -Path $hd.Path).Size / 1GB
        } else {
            "无挂载硬盘"
        }
    }} # 硬盘容量(转换为GB)

写法2:支持多硬盘VM的查询

如果部分虚拟机挂载了多个硬盘,上面的方法只会返回第一个硬盘的信息,这时候可以用-join把所有硬盘的信息拼接起来:

Get-Vm | Sort-Object Name | Select-Object Name, Uptime, 
    @{N="MemoryMB";E={$_.MemoryAssigned/1MB}},
    @{N="MemoryStartupMB";E={$_.MemoryStartup/1MB}},
    ProcessorCount, Status, 
    @{N="MemoryMaxMB";E={$_.MemoryMaximum/1MB}},
    @{N="VHDPaths";E={($_ | Get-VMHardDiskDrive).Path -join "; "}}, # 所有硬盘路径用分号分隔
    @{N="VHDSizesGB";E={
        ($_ | Get-VMHardDiskDrive | ForEach-Object {
            [math]::Round((Get-VHD -Path $_.Path).Size / 1GB, 2)
        }) -join "; "
    }} # 对应硬盘的容量(保留两位小数)

注:如果虚拟机没有挂载硬盘,这些字段会返回你设置的默认提示(比如上面的“无挂载硬盘”),可以根据实际需求调整。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 12:18:26