收集系统进程IO详细信息

问题描述 投票:0回答:1

我正在尝试准备一份报告,其中我需要收集系统上运行的所有进程的I / O读,写和其他字节。下面是我当前使用的脚本。

Get-Process|select name,cpu,@{name="WorkingSet";Expression={$_.WorkingSet/1kb}},BasePriority,path|where {$_.Name -in 'dllhost','firefox','dsapi'}

下面是经过一些处理和测量对象而获得的输出。

enter image description here

我面临的问题是,对于大多数系统进程或用户名为[[system的用户,这些值的返回值大多为zero形式。请就如何解决此问题以及获得系统过程的实际价值提供一些指导。

powershell system taskmanager
1个回答
0
投票
确保您以管理员身份运行Powershell。

据我所见,没有ReadByteSec或WriteBytpeSec。您还使用了不包含这些属性的select语句。

键入此内容以查看dllhost的所有可用属性:

$processes = Get-Process | where {$_.Name -in 'dllhost'} Get-Member -InputObject $processes[0]

然后将它们添加到您的语句中:

Get-Process |选择名称,cpu,@ {name =“ WorkingSet”;表达式= {$

。WorkingSet / 1kb}},BasePriority,路径,* BytesField1,BytesField2等* |其中{ $。Name -in'dllhost','firefox','dsapi'}

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.