首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在powershell中按CPU使用率列出进程

在powershell中按CPU使用率列出进程
EN

Stack Overflow用户
提问于 2016-10-09 13:02:42
回答 9查看 124.9K关注 0票数 18

如何通过将输出从Get-Process传输到Where-Object来列出使用CPU > 1%的进程?

完全入门的powershell,我所能想到的就是这样的东西

代码语言:javascript
运行
复制
Get-Process | Where-Object { CPU_Usage -gt 1% }
EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2016-10-09 13:51:12

如果需要CPU百分比,可以使用get计数器获取性能计数器,并且可以为所有进程运行Get计数器。因此,要列出使用大于CPU使用量的5%的进程:

代码语言:javascript
运行
复制
(Get-Counter '\Process(*)\% Processor Time').CounterSamples | Where-Object {$_.CookedValue -gt 5}

这将列出在采样的实例中使用CPU >5%的进程。希望这能有所帮助!

票数 43
EN

Stack Overflow用户

发布于 2016-10-09 13:44:08

这里有几点需要注意:

  • 首先,您必须使用$_变量来引用当前来自管道的对象。
  • 第二,Powershell不使用%来表示百分比--相反,%表示模数运算符。所以,当你想要百分比的时候,你必须自己转换你的数字,只需把它乘以0.01
  • 第三,Get-Process cmdlet没有字段CPU_Usage;其输出的摘要可以找到这里。关于字段,CPU是这样说的:“进程在所有处理器上使用的处理器时间量,以秒为单位。”所以要清楚你能从这些数字中得到什么。

总结该命令可以编写为

代码语言:javascript
运行
复制
Get-Process | Where-Object { $_.CPU -gt 100 }

这将为您提供使用超过100秒CPU时间的进程。

如果你想要一个相对语句,你首先必须总结所有使用的时间,然后将实际时间除以总时间。你可以得到总CPU时间,例如

代码语言:javascript
运行
复制
Get-Process | Select-Object -expand CPU | Measure-Object -Sum | Select-Object -expand Sum

尝试将其与前面的命令叠加在一起。

票数 14
EN

Stack Overflow用户

发布于 2019-10-08 21:14:01

通过增加逻辑核数的动态检测来进一步改进早期的答案,这样就可以将百分比调整回我们普通人期望看到的结果,在这种情况下,100%意味着机器的所有CPU带宽,并且没有大于100%的值。包括一个10%的过滤器设置,它可以适当地调整。假设人们会感兴趣地寻找具有高过载处理器使用率的进程,而不想列出机器的众多空闲进程。

代码语言:javascript
运行
复制
$NumberOfLogicalProcessors=(Get-WmiObject -class Win32_processor | Measure-Object -Sum NumberOfLogicalProcessors).Sum
(Get-Counter '\Process(*)\% Processor Time').Countersamples | Where cookedvalue -gt ($NumberOfLogicalProcessors*10) | Sort cookedvalue -Desc | ft -a instancename, @{Name='CPU %';Expr={[Math]::Round($_.CookedValue / $NumberOfLogicalProcessors)}}

样本输出:

代码语言:javascript
运行
复制
InstanceName CPU %
------------ -----
_total         100
idle           100
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39943928

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档