加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

使用Powershell找出使用大量内存的内容(在64位Windows上)

发布时间:2020-12-14 00:08:12 所属栏目:Windows 来源:网络整理
导读:我如何找出(在Power shell中)什么过程/什么使用最多的内存? 编辑:我试图弄清楚如何使用Powershell找出使用所有物理内存的情况,以防任务管理器等无法解释为什么所有物理RAM都用完了.即我需要识别缓存等使用的内存. 这是获取当前正在运行的进程的信息并按工
我如何找出(在Power shell中)什么过程/什么使用最多的内存?

编辑:我试图弄清楚如何使用Powershell找出使用所有物理内存的情况,以防任务管理器等无法解释为什么所有物理RAM都用完了.即我需要识别缓存等使用的内存.

这是获取当前正在运行的进程的信息并按工作集大小排序的方法
Get-Process | Sort-Object -Descending WS

将该输出分配给变量,它将为您提供结果数组,然后您可以写出数组的第一个成员(在本例中将是一个System.Diagnostics.Process对象).

$ProcessList = Get-Process | Sort-Object -Descending WS
Write-Host $ProcessList[0].Handle "::" $Process.ProcessName "::" $Process.WorkingSet

这是另一个快速而脏的脚本,使用WMI的Win32_Process提供程序从当前正在运行的进程列表中转储一些数据项:

$ProcessList = Get-WmiObject Win32_Process -ComputerName mycomputername
foreach ($Process in $ProcessList) {
    write-host $Process.Handle "::" $Process.Name "::" $Process.WorkingSetSize
}

这将列出PID(句柄),进程名称和当前工作集大小.您可以使用WMI Process class的不同属性进行更改.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读