Ironman Software Forums
Continue the conversion on the Ironman Software forums. Chat with over 1000 users about PowerShell, PowerShell Universal, and PowerShell Pro Tools.
PowerShell Where-Object
is a cmdlet used to filter objects on the pipeline. You can pass a collection of objects to the cmdlet and then provide a filter to select only the objects that you wish to return. There are two common parameter sets for Where-Object
. The first takes advantage of the various parameters on Where-Object
. The second allows you to use a script block to compose more advanced queries.
Let’s take a look at the first type of filtering. We will filter the processes on the machine based on name.
Get-Process | Where-Object Name -eq 'Notepad'
The above command line will select the processes where the name is Notepad. When deciding how to filter objects returned from a particular cmdlet, you can use Get-Member
to see the properties available on the object.
To create more complex queries, you can use a script block. The following will achieve the same result as the previous object.
Get-Process | Where-Object { $_.Name -eq 'notepad' }
The braces denote the beginning and end of a script block. It is similar to a function. This Where-Object
script block is called for each process that is returned from Get-Process
. The $_
variable is used to denote the current object in the array of objects returned.
Continue the conversion on the Ironman Software forums. Chat with over 1000 users about PowerShell, PowerShell Universal, and PowerShell Pro Tools.
Receive once-a-month updates about Ironman Software. You'll learn about our product updates and blogs related to PowerShell.