我想讓PowerShell給我內存和CPU使用率,但我無法弄清楚使用什麼WMI類。我的電腦有兩個處理器,所以爲他們提供信息會很有用。如何使用PowerShell查找CPU和RAM使用情況?
回答
Get-WmiObject win32_processor | select LoadPercentage |fl
這會給你CPU負載。
(如EBGreen建議)編輯:
Get-WmiObject win32_processor | Measure-Object -property LoadPercentage -Average | Select Average
您也可以使用Get-計數器cmdlet的(PowerShell的2.0):
Get-Counter '\Memory\Available MBytes'
Get-Counter '\Processor(_Total)\% Processor Time'
爲了讓內存計數器的列表:
Get-Counter -ListSet *memory* | Select-Object -ExpandProperty Counter
要將輸出連續輸出到文件(此處每隔五秒)並使用Unix保存到CSV文件日期作爲文件名:
while ($true) {
[int]$date = get-date -Uformat %s
$exportlocation = New-Item -type file -path "c:\$date.csv"
Get-Counter -Counter "\Processor(_Total)\% Processor Time" | % {$_} | Out-File $exportlocation
start-sleep -s 5
}
我用下面的PowerShell段來獲取本地或遠程系統的CPU使用率:
Get-Counter -ComputerName localhost '\Process(*)\% Processor Time' | Select-Object -ExpandProperty countersamples | Select-Object -Property instancename, cookedvalue| Sort-Object -Property cookedvalue -Descending| Select-Object -First 20| ft InstanceName,@{L='CPU';E={($_.Cookedvalue/100).toString('P')}} -AutoSize
同一個腳本,但與行延續格式:
Get-Counter -ComputerName localhost '\Process(*)\% Processor Time' `
| Select-Object -ExpandProperty countersamples `
| Select-Object -Property instancename, cookedvalue `
| Sort-Object -Property cookedvalue -Descending | Select-Object -First 20 `
| ft InstanceName,@{L='CPU';E={($_.Cookedvalue/100).toString('P')}} -AutoSize
在4核心系統上,它將返回如下結果:
InstanceName CPU
------------ ---
_total 399.61 %
idle 314.75 %
system 26.23 %
services 24.69 %
setpoint 15.43 %
dwm 3.09 %
policy.client.invoker 3.09 %
imobilityservice 1.54 %
mcshield 1.54 %
hipsvc 1.54 %
svchost 1.54 %
stacsv64 1.54 %
wmiprvse 1.54 %
chrome 1.54 %
dbgsvc 1.54 %
sqlservr 0.00 %
wlidsvc 0.00 %
iastordatamgrsvc 0.00 %
intelmefwservice 0.00 %
lms 0.00 %
ComputerName參數將接受服務器列表,因此通過一些額外的格式可以生成每臺服務器上的頂級進程列表。喜歡的東西:
$psstats = Get-Counter -ComputerName utdev1,utdev2,utdev3 '\Process(*)\% Processor Time' -ErrorAction SilentlyContinue | Select-Object -ExpandProperty countersamples | %{New-Object PSObject -Property @{ComputerName=$_.Path.Split('\')[2];Process=$_.instancename;CPUPct=("{0,4:N0}%" -f $_.Cookedvalue);CookedValue=$_.CookedValue}} | ?{$_.CookedValue -gt 0}| Sort-Object @{E='ComputerName'; A=$true },@{E='CookedValue'; D=$true },@{E='Process'; A=$true }
$psstats | ft @{E={"{0,25}" -f $_.Process};L="ProcessName"},CPUPct -AutoSize -GroupBy ComputerName -HideTableHeaders
這將導致$ psstats與原始數據和下面顯示的變量:
ComputerName: utdev1
_total 397%
idle 358%
3mws 28%
webcrs 10%
ComputerName: utdev2
_total 400%
idle 248%
cpfs 42%
cpfs 36%
cpfs 34%
svchost 21%
services 19%
ComputerName: utdev3
_total 200%
idle 200%
如何修改$ psstats以除以'@(gwmi -ComputerName $ server -Class Win32_ComputerSystemProcessor).Count'並添加'(gwmi Win32_Process -ComputerName $ ComputerName -Credential $ cred | Where {$ _。ProcessId -eq $ Process .IDProcess})。GetOwner()。User'? – 2016-11-02 12:25:15
您不需要反引號來繼續行。您可以繼續使用管道符號。 – js2010 2017-09-29 14:16:56
- 1. 如何在Windows 7中查找CPU使用情況的OID?
- 2. 如何查找谷歌分析器中的CPU使用情況
- 3. Socket.io CPU和Ram的使用
- 4. 使用WMI獲取C#中每個進程的CPU和RAM使用情況?
- 5. 如何在Python中獲取當前的CPU和RAM使用情況?
- 6. 如何在C++中獲取當前的CPU和RAM使用情況?
- 7. 如何在VB 6中獲取當前的CPU和RAM使用情況?
- 8. C#查詢遠程計算機的資源使用情況(即CPU負載,RAM使用情況)
- 9. 如何在Java中檢查CPU和內存使用情況?
- 10. 如何查看/報告Windows Azure CPU和內存使用情況?
- 11. CPU使用情況如何計算?
- 12. 度量以計算和比較Android中的RAM和CPU使用情況
- 13. Python/PySerial和CPU使用情況
- 14. 在Linux中查找線程的CPU使用情況
- 15. 如何獲取C#(託管代碼)中的* THREAD *的CPU使用率和/或RAM使用情況?
- 16. 獲取C#中當前CPU,RAM和磁盤驅動器的使用情況
- 17. 確定Silverlight 4 Windows Sidebar小工具中的CPU和RAM使用情況
- 18. 在Android上獲取CPU,RAM和網絡使用情況統計信息
- 19. MongoDB複製RAM使用情況
- 20. AS400 jt400獲取RAM使用情況
- 21. 配置.NET CLR RAM的使用情況
- 22. 如何以編程方式檢查網站cpu使用情況?
- 23. 如何在Java中使用Newrelic查找線程使用情況?
- 24. 如何使用.NET CORE獲取C#Web應用程序當前的CPU/RAM /磁盤使用情況?
- 25. 如何測量F#代碼的CPU和內存使用情況?
- 26. 如何獲得Apache Cordova中的CPU和內存使用情況?
- 27. 使用Google Analytics(分析)跟蹤CPU和內存使用情況
- 28. 找到Jquery的CPU和Ram使用的工具/插件
- 29. 如何從aws服務器詳細信息(如cpu ram和硬盤使用情況)獲取實時數據
- 30. 如何知道使用WMI的進程的CPU和內存使用情況?
謝謝!但是,是否有可能獲得平均數字?我寧願只有一個值而不是兩個。 – Aaron 2011-06-10 13:41:31
試試這個:Get-WmiObject win32_processor | Measure-Object -property LoadPercentage -Average |選擇平均值 – EBGreen 2011-06-10 14:29:43
我會讓Anirudh的回答立場,如果這對OP有效,他不編輯它,那麼我會在稍後。 – EBGreen 2011-06-10 14:30:28