在 powershell 中,如何获取进程使用的总私有字节数?
(我知道进程浏览器有两列,工作集和私有字节)。
[我在研究时确实找到了一个命令,但它不起作用,我把它从问题中删掉了,因为它存在各种问题,使这个问题看起来比实际更复杂)
答案1
David Postill 提到
Get-process | Sort PrivateMemorySize -Descending | Select Name,PrivateMemorySize -First 10
我发现它可以适用于 chrome.exe
PS C:\Users\harvey> Get-process chrome | Sort PrivateMemorySize -Descending | Select Name,PrivateMemorySize
Name PrivateMemorySize
---- -----------------
chrome 1135521792
chrome 1134342144
chrome 718610432
..... ..........
根据 Excel,所有这些总计为
13851226112
并使用 powershell 总计
PS C:\Users\user> (Get-Process chrome | Measure-Object PrivateMemorySize -sum).sum
13939982336
注意-(可以使用 PM 代替 PrivateMemorySize,或者使用 WS 代替工作集内存)。
这Get-process chrome | Select Name,WS,PM
显示了两者,并且可以在 powershell 或 excel 中求和。
总和略有不同只是因为命令未在脚本中运行的时间范围不同,如果它们在脚本中运行,则总数将相同。但每次运行之间有几秒钟的间隔。