如何解决CPU 利用率排名前 10 的进程 - Windows PowerShell
需要在 windows powershell 中使用命令来获取 cpu 利用率前 10 名的进程。它应该像任务管理器一样返回进程名称、%cpu 和 %cpu 使用的内存顺序。
如何在 powershell 中获取此列表?
我找到了这个
Get-Counter "\Process(*)\% Processor Time" -ErrorAction SilentlyContinue `
| select -ExpandProperty CounterSamples `
| where {$_.Status -eq 0 -and $_.instancename -notin "_total","idle"} `
| sort CookedValue -Descending `
| select @{N="Name";E={
$friendlyName = $_.InstanceName
try {
$procId = [System.Diagnostics.Process]::GetProcessesByName($_.InstanceName)[0].Id
$proc = Get-WmiObject -Query "SELECT ProcessId,ExecutablePath FROM Win32_Process WHERE ProcessId=$procId"
$procPath = ($proc | where { $_.ExecutablePath } | select -First 1).ExecutablePath
$friendlyName = [System.Diagnostics.FiLeversionInfo]::GetVersionInfo($procPath).FileDescription
} catch { }
$friendlyName
}},@{N="cpu";E={($_.CookedValue/100/$env:NUMBER_OF_PROCESSORS).ToString("P")}} -First 10 `
| ft -a -HideTableHeaders
但是,以千字节为单位插入内存信息时它不起作用
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。