我如何在没有WMI的情况下使用PowerShell获得总物理内存大小?

问题描述 投票:12回答:8

我正在尝试使用PowerShell获取物理内存大小,但不使用get-wmiobject。

我一直在使用以下PS cmdlet来获取物理内存大小,但是该值随每个新的轮询而变化。

(get-counter -counter "\Memory\Available Bytes").CounterSamples[0].CookedValue + 
(get-counter -counter "\Memory\Committed Bytes").CounterSamples[0].CookedValue

[通常,这给了我一个大约为:8605425664字节的值

我也在测试通过将这些计数器与从]返回的值相加得到的值>

(get-wmiobject -class "win32_physicalmemory" -namespace "root\CIMV2").Capacity

这给了我值:8589934592字节

因此,不仅从计数器计算出的总物理内存发生了变化,而且它的值与WMI值相差了几兆字节。任何人都对不使用WMI如何获取物理内存大小有任何想法?

我正在尝试使用PowerShell获得物理内存大小,但不使用get-wmiobject。我一直在使用以下PS cmdlet来获取物理内存大小,但是该值随...

powershell memory byte wmi
8个回答
20
投票

如果您不想使用WMI,我可以建议systeminfo.exe。但是,也许有更好的方法可以做到这一点。


11
投票

我想为以后引用的人记录下来。


7
投票

Id想说,与其一起使用systeminfo,不如通过它获取机器的GB物理内存总量,>

Get-CimInstance Win32_PhysicalMemory | Measure-Object -Property capacity -Sum | Foreach {"{0:N2}" -f ([math]::round(($_.Sum / 1GB),2))}

4
投票

不要让事情复杂化...:


1
投票

这将为您提供另一个WMI类别


0
投票

对于那些不分年龄的人,一个可行的解决方案:


0
投票

也许不是最好的解决方案,但是对我有用。


0
投票

下面给出了总的物理内存。

© www.soinside.com 2019 - 2024. All rights reserved.