日期:2014-05-17  浏览次数:20820 次

通过WMI 方式如何获得远程系统的核心内存、分页、未分页
小弟的分不多了,只有这么些,请高人和做过的朋友指教下

------解决方案--------------------
在powershell里执行下面的指令:
gwmi win32_OperatingSystem|gm|?{$_.name -match "mem"}
返回结果:
TypeName: System.Management.ManagementObject#root\cimv2\Win32_OperatingSystem

Name MemberType Definition
---- ---------- ----------
FreePhysicalMemory Property System.UInt64 FreePhysicalMemory {get;set;}
FreeVirtualMemory Property System.UInt64 FreeVirtualMemory {get;set;}
MaxProcessMemorySize Property System.UInt64 MaxProcessMemorySize {get;set;}
TotalVirtualMemorySize Property System.UInt64 TotalVirtualMemorySize {get;set;}
TotalVisibleMemorySize Property System.UInt64 TotalVisibleMemorySize {get;set;}
这些是和内存相关的属性。

以下是powershell利用wmi获取内存信息的脚本语句,也可以在vbs和在cmd中用wmic中实现。
$men = gwmi win32_OperatingSystem 
$Allmen = "{0:0.0} MB" -f ($men.TotalVisibleMemorySize / 1KB) 
$Freemen = "{0:0.0} MB" -f ($men.FreePhysicalMemory / 1KB) 
$Permem = "{0:0.0} %" -f ((($men.TotalVisibleMemorySize-$men.FreePhysicalMemory)/$men.TotalVisibleMemorySize)*100)
Write-Host "内存总数:$Allmen 内存可用数:$Freemen 内存使用率:$Permem"
显示结果:
内存总数:3319.4 MB 内存可用数:1612.4 MB 内存使用率:51.4 %