Powershell命令根据线程计数对进程进行排序

时间:2018-03-02 02:59:33

标签: powershell process

我试图编写一个脚本,列出所有活动进程及其使用的线程数,然后将它们从大多数线程排序到最少。

我目前所拥有的内容被黑客攻击,并且不会对活动线程进行排序:

get-process | %{$_.Name;$_.Threads | %{$_.ID }| measure-object -line}

任何人都知道更好的方法吗?

1 个答案:

答案 0 :(得分:2)

嗯,你并没有告诉它要对任何东西进行排序。这就是Sort-Object cmdlet的用途。然而,我在这里采取了不同的方法:

例如:

Get-Process | 
Select-Object Name, ID, @{Name='ThreadCount';Expression ={$_.Threads.Count}} | 
Sort-Object -Property ThreadCount -Descending

Name                       Id ThreadCount
----                       -- -----------
System                      4         251
sqlservr                 7816         103
iexplore                  412          87
Memory Compression       3176          74
SkypeHost               11952          58
explorer                 6568          51