Use PowerShell to find processes using most virtual memory

Here’s a tip from my colleague Ed Wilson (the Microsoft Scripting Guy) on how to use Windows PowerShell to find processes consuming the most virtual memory. Ed Wilson is the bestselling author of eight books about Windows Scripting, including Windows PowerShell 3.0 Step by Step, and Windows PowerShell 3.0 First Steps. He writes a daily blog about Windows PowerShell call Hey, Scripting Guy! that is hosted on the Microsoft TechNet Script Center; for more PowerTips check out the Hey, Scripting Guy! blog.

Question: You need to find processes that are using the most virtual machine. How can you use Windows PowerShell to help you do this?

Answer: Use the Get-Process cmdlet and pipeline the results to the Sort-Object cmdlet. Send those results to the Select-Object cmdlet and choose the last 5 (for the top five processes). This technique appears here (Sort is an sort form of Sort-Object and Select is a short form of Select-Object).

Get-Process | sort vm | select name, vm -Last 5

Mitch Tulloch is an eight-time recipient of the Microsoft Most Valuable Professional (MVP) award and a widely recognized expert on Windows administration, deployment and virtualization.  For more information see

About The Author

Leave a Comment

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Scroll to Top