Where-Object
Hiermee selecteert u objecten uit een verzameling op basis van hun eigenschapswaarden.
Syntax
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-EQ]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-FilterScript] <ScriptBlock>
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-Match
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CEQ
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-NE
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CNE
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-GT
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CGT
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-LT
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CLT
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-GE
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CGE
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-LE
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CLE
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-Like
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CLike
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-NotLike
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CNotLike
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CMatch
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-NotMatch
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CNotMatch
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-Contains
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CContains
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-NotContains
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CNotContains
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-In
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CIn
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-NotIn
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CNotIn
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-Is
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-IsNot
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
-Not
[<CommonParameters>]
Description
De Where-Object
cmdlet selecteert objecten die bepaalde eigenschapswaarden hebben uit de verzameling objecten die aan de cmdlet worden doorgegeven. U kunt bijvoorbeeld de Where-Object
cmdlet gebruiken om bestanden te selecteren die zijn gemaakt na een bepaalde datum, gebeurtenissen met een bepaalde id of computers die een bepaalde versie van Windows gebruiken.
Vanaf Windows PowerShell 3.0 zijn er twee verschillende manieren om een Where-Object
opdracht te maken.
Scriptblok. U kunt een scriptblok gebruiken om de naam van de eigenschap, een vergelijkingsoperator en een eigenschapswaarde op te geven.
Where-Object
retourneert alle objecten waarvoor de scriptblokinstructie waar is.Met de volgende opdracht worden bijvoorbeeld processen opgehaald in de
Normal
prioriteitsklasse, dat wil gezegd, processen waarbij de waarde van de eigenschap PriorityClass gelijk isNormal
aan .Get-Process | Where-Object {$_.PriorityClass -eq "Normal"}
Alle PowerShell-vergelijkingsoperators zijn geldig in de scriptblokindeling. Zie about_Comparison_Operators voor meer informatie.
Vergelijkingsinstructie. U kunt ook een vergelijkingsinstructie schrijven, die veel meer lijkt op natuurlijke taal. Vergelijkingsinstructies zijn geïntroduceerd in Windows PowerShell 3.0.
Met de volgende opdrachten worden bijvoorbeeld ook processen met een prioriteitsklasse van
Normal
. Deze opdrachten zijn gelijkwaardig en u kunt ze door elkaar gebruiken.Get-Process | Where-Object -Property PriorityClass -EQ -Value "Normal"
Get-Process | Where-Object PriorityClass -EQ "Normal"
Vanaf Windows PowerShell 3.0 voegt
Where-Object
u vergelijkingsoperators toe als parameters in eenWhere-Object
opdracht. Tenzij opgegeven, zijn alle operators niet hoofdlettergevoelig. Vóór Windows PowerShell 3.0 waren de vergelijkingsoperatoren in de PowerShell-taal alleen bruikbaar in scriptblokken.
Wanneer u één eigenschap opgeeft aan Where-Object
, behandelt de cmdlet de waarde van de eigenschap als een booleaanse expressie. Wanneer de waarde van de lengte van de eigenschap niet nul is, resulteert de expressie in $true
. Bijvoorbeeld: ('hi', '', 'there') | Where-Object Length
Het vorige voorbeeld is functioneel gelijk aan:
('hi', '', 'there') | Where-Object Length -GT 0
('hi', '', 'there') | Where-Object { $_.Length -gt 0 }
Zie about_Booleans voor meer informatie over hoe PowerShell booleaanse waarden evalueert.
Voorbeelden
Voorbeeld 1: gestopte services ophalen
Met deze opdrachten krijgt u een lijst met alle services die zijn gestopt. De $_
automatische variabele vertegenwoordigt elk object dat wordt doorgegeven aan de Where-Object
cmdlet.
De eerste opdracht maakt gebruik van de indeling scriptblok, de tweede opdracht maakt gebruik van de indeling van de vergelijkingsinstructie. De opdrachten filteren de services op dezelfde manier en retourneren dezelfde uitvoer. Alleen de syntaxis is anders.
Get-Service | Where-Object { $_.Status -eq "Stopped" }
Get-Service | Where-Object Status -EQ "Stopped"
Voorbeeld 2: Processen ophalen op basis van een werkset
Met deze opdrachten worden processen weergegeven die een werkset hebben die groter is dan 250 MB (megabytes). De opdrachten filteren de processen op dezelfde manier en retourneren dezelfde uitvoer. Alleen de syntaxis is anders.
Get-Process | Where-Object { $_.WorkingSet -GT 250MB }
Get-Process | Where-Object WorkingSet -GT 250MB
Voorbeeld 3: Processen ophalen op basis van procesnaam
Met deze opdrachten worden de processen opgehaald die een eigenschapswaarde ProcessName hebben die begint met de letter p
. Met de operator Vergelijken kunt u reguliere expressieovereenkomsten gebruiken.
De opdrachten filteren de processen op dezelfde manier en retourneren dezelfde uitvoer. Alleen de syntaxis is anders.
Get-Process | Where-Object { $_.ProcessName -Match "^p.*" }
Get-Process | Where-Object ProcessName -Match "^p.*"
Voorbeeld 4: De indeling van de vergelijkingsinstructie gebruiken
In dit voorbeeld ziet u hoe u de nieuwe indeling van de vergelijkingsinstructie van de Where-Object
cmdlet gebruikt.
De eerste opdracht maakt gebruik van de indeling van de vergelijkingsinstructie. Het gebruikt geen aliassen en bevat de naam voor elke parameter.
De tweede opdracht is het meer natuurlijke gebruik van de indeling van de vergelijkingsopdracht. Met de opdracht wordt de where
naam van de cmdlet vervangen door de Where-Object
alias en worden alle optionele parameternamen weggelaten.
De opdrachten filteren de processen op dezelfde manier en retourneren dezelfde uitvoer. Alleen de syntaxis is anders.
Get-Process | Where-Object -Property Handles -GE -Value 1000
Get-Process | where Handles -GE 1000
Voorbeeld 5: Opdrachten ophalen op basis van eigenschappen
In dit voorbeeld ziet u hoe u opdrachten schrijft die items retourneren die waar of onwaar zijn of die een waarde hebben voor een opgegeven eigenschap. Elk voorbeeld toont zowel de indelingen van het scriptblok als de vergelijkingsinstructie voor de opdracht.
De opdrachten filteren hun invoer op dezelfde manier en retourneren dezelfde uitvoer. Alleen de syntaxis is anders.
# Use Where-Object to get commands that have any value for the OutputType
# property of the command. This omits commands that do not have an OutputType
# property and those that have an OutputType property, but no property value.
Get-Command | Where-Object OutputType
Get-Command | Where-Object { $_.OutputType }
# Use Where-Object to get objects that are containers. This gets objects that
# have the **PSIsContainer** property with a value of $True and excludes all
# others.
Get-ChildItem | Where-Object PSIsContainer
Get-ChildItem | Where-Object { $_.PSIsContainer }
# Finally, use the -not operator (!) to get objects that are not containers.
# This gets objects that do have the **PSIsContainer** property and those
# that have a value of $False for the **PSIsContainer** property.
Get-ChildItem | Where-Object -Not PSIsContainer
Get-ChildItem | Where-Object { !$_.PSIsContainer }
Voorbeeld 6: Meerdere voorwaarden gebruiken
Get-Module -ListAvailable | Where-Object {
($_.Name -notlike "Microsoft*" -and $_.Name -notlike "PS*") -and $_.HelpInfoUri
}
In dit voorbeeld ziet u hoe u een Where-Object
opdracht met meerdere voorwaarden maakt.
Met deze opdracht worden niet-kernmodules opgehaald die ondersteuning bieden voor de functie Bijwerkbare Help. De opdracht gebruikt de parameter ListAvailable van de Get-Module
cmdlet om alle modules op de computer op te halen. Een pijplijnoperator (|
) verzendt de modules naar de Where-Object
cmdlet, die modules ophaalt waarvan de naam niet begint met Microsoft
of PS
, en een waarde heeft voor de eigenschap HelpInfoURI , waarmee PowerShell aangeeft waar bijgewerkte Help-bestanden voor de module moeten worden gevonden. De -and
logische operator verbindt de vergelijkingsinstructies.
In het voorbeeld wordt de opdrachtindeling scriptblok gebruikt. Logische operators, zoals -and
,-or
, en -not
zijn alleen geldig in scriptblokken. U kunt deze niet gebruiken in de indeling van de vergelijkingsinstructie van een Where-Object
opdracht.
- Zie about_Logical_Operators voor meer informatie over logische PowerShell-operators.
- Zie about_Updatable_Help voor meer informatie over de functie Help bijwerken.
Parameters
-CContains
Geeft aan dat deze cmdlet objecten ophaalt uit een verzameling als de eigenschapswaarde van het object exact overeenkomt met de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
Bijvoorbeeld: Get-Process | Where-Object ProcessName -CContains "svchost"
CContains verwijst naar een verzameling waarden en is waar als de verzameling een item bevat dat exact overeenkomt met de opgegeven waarde. Als de invoer één object is, wordt dit door PowerShell geconverteerd naar een verzameling van één object.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CEQ
Geeft aan dat met deze cmdlet objecten worden opgehaald als de eigenschapswaarde hetzelfde is als de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CGE
Geeft aan dat met deze cmdlet objecten worden opgehaald als de eigenschapswaarde groter is dan of gelijk is aan de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CGT
Geeft aan dat met deze cmdlet objecten worden opgehaald als de eigenschapswaarde groter is dan de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CIn
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde de opgegeven waarde bevat. Deze bewerking is hoofdlettergevoelig.
Bijvoorbeeld: Get-Process | Where-Object -Value "svchost" -CIn ProcessName
CIn lijkt op CContains, behalve dat de eigenschaps- en waardeposities omgekeerd zijn. De volgende beweringen zijn bijvoorbeeld beide waar.
"abc", "def" -CContains "abc"
"abc" -CIn "abc", "def"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CLE
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde kleiner is dan of gelijk is aan de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CLike
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde overeenkomt met een waarde die jokertekens (*
) bevat. Deze bewerking is hoofdlettergevoelig.
Bijvoorbeeld: Get-Process | Where-Object ProcessName -CLike "*host"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CLT
Geeft aan dat met deze cmdlet objecten worden opgehaald als de waarde van de eigenschap kleiner is dan de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CMatch
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde overeenkomt met de opgegeven reguliere expressie. Deze bewerking is hoofdlettergevoelig. Wanneer de invoer één object is, wordt de overeenkomende waarde opgeslagen in de $Matches
automatische variabele.
Bijvoorbeeld: Get-Process | Where-Object ProcessName -CMatch "Shell"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CNE
Hiermee wordt aangegeven dat met deze cmdlet objecten worden opgehaald als de eigenschapswaarde anders is dan de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CNotContains
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde van het object niet exact overeenkomt met de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
Bijvoorbeeld: Get-Process | Where-Object ProcessName -CNotContains "svchost"
NotContains en CNotContains verwijzen naar een verzameling waarden en zijn waar wanneer de verzameling geen items bevat die exact overeenkomen met de opgegeven waarde. Als de invoer één object is, wordt dit door PowerShell geconverteerd naar een verzameling van één object.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CNotIn
Geeft aan dat met deze cmdlet objecten worden opgehaald als de waarde van de eigenschap niet exact overeenkomt met de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
Bijvoorbeeld: Get-Process | Where-Object -Value "svchost" -CNotIn -Property ProcessName
NotIn - en CNotIn-operators lijken op NotContains en CNotContains, behalve dat de eigenschaps- en waardeposities omgekeerd zijn. De volgende beweringen zijn bijvoorbeeld waar.
"abc", "def" -CNotContains "Abc"
"abc" -CNotIn "Abc", "def"
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CNotLike
Geeft aan dat met deze cmdlet objecten worden opgehaald als de waarde van de eigenschap niet overeenkomt met een waarde die jokertekens bevat. Deze bewerking is hoofdlettergevoelig.
Bijvoorbeeld: Get-Process | Where-Object ProcessName -CNotLike "*host"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CNotMatch
Geeft aan dat met deze cmdlet objecten worden opgehaald als de waarde van de eigenschap niet overeenkomt met de opgegeven reguliere expressie. Deze bewerking is hoofdlettergevoelig. Wanneer de invoer één object is, wordt de overeenkomende waarde opgeslagen in de $Matches
automatische variabele.
Bijvoorbeeld: Get-Process | Where-Object ProcessName -CNotMatch "Shell"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Contains
Geeft aan dat deze cmdlet objecten ophaalt als een item in de eigenschapswaarde van het object exact overeenkomt met de opgegeven waarde.
Bijvoorbeeld: Get-Process | Where-Object ProcessName -Contains "Svchost"
Als de invoer één object is, wordt dit door PowerShell geconverteerd naar een verzameling van één object.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliases: | IContains |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EQ
Geeft aan dat met deze cmdlet objecten worden opgehaald als de eigenschapswaarde hetzelfde is als de opgegeven waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliases: | IEQ |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FilterScript
Hiermee geeft u het scriptblok op dat wordt gebruikt om de objecten te filteren. Plaats het scriptblok tussen accolades ({}
).
De parameternaam , FilterScript, is optioneel.
Type: | ScriptBlock |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-GE
Geeft aan dat met deze cmdlet objecten worden opgehaald als de eigenschapswaarde groter is dan of gelijk is aan de opgegeven waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliases: | IGE |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-GT
Geeft aan dat met deze cmdlet objecten worden opgehaald als de eigenschapswaarde groter is dan de opgegeven waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliases: | IGT |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-In
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde overeenkomt met een van de opgegeven waarden. Bijvoorbeeld:
Get-Process | Where-Object -Property ProcessName -in -Value "Svchost", "TaskHost", "WsmProvHost"
Als de invoer één object is, wordt dit door PowerShell geconverteerd naar een verzameling van één object.
Als de eigenschapswaarde van een object een matrix is, gebruikt PowerShell verwijzingsgelijkheid om een overeenkomst te bepalen. Where-Object
retourneert het object alleen als de waarde van de parameter Eigenschap en een waarde van Waarde hetzelfde exemplaar van een object zijn.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliases: | IIn |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Hiermee geeft u de objecten te filteren. U kunt de objecten ook doorsluisen naar Where-Object
.
Wanneer u de parameter InputObject gebruikt met Where-Object
, in plaats van de opdrachtresultaten door te sluizen naar Where-Object
, behandelt de cmdlet het InputObject als één object. Dit geldt zelfs als de waarde een verzameling is die het resultaat is van een opdracht, zoals -InputObject (Get-Process)
.
Omdat InputObject geen afzonderlijke eigenschappen van een matrix of verzameling objecten kan retourneren, raden we u aan om, als u Where-Object
gebruikt om een verzameling objecten te filteren op objecten met specifieke waarden in gedefinieerde eigenschappen, u in de pijplijn gebruikt Where-Object
, zoals wordt weergegeven in de voorbeelden in dit onderwerp.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Is
Geeft aan dat met deze cmdlet objecten worden opgehaald als de eigenschapswaarde een exemplaar is van het opgegeven .NET-type. Plaats de typenaam tussen vierkante haken.
Bijvoorbeeld: Get-Process | Where-Object StartTime -Is [DateTime]
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IsNot
Geeft aan dat met deze cmdlet objecten worden opgehaald als de eigenschapswaarde geen exemplaar van het opgegeven .NET-type is.
Bijvoorbeeld: Get-Process | where StartTime -IsNot [DateTime]
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LE
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde kleiner is dan of gelijk is aan de opgegeven waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliases: | ILE |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Like
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde overeenkomt met een waarde die jokertekens (*
) bevat.
Bijvoorbeeld: Get-Process | Where-Object ProcessName -Like "*host"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliases: | ILike |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LT
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde kleiner is dan de opgegeven waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliases: | ILT |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Match
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde overeenkomt met de opgegeven reguliere expressie. Wanneer de invoer één object is, wordt de overeenkomende waarde opgeslagen in de $Matches
automatische variabele.
Bijvoorbeeld: Get-Process | Where-Object ProcessName -Match "shell"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliases: | IMatch |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NE
Hiermee wordt aangegeven dat met deze cmdlet objecten worden opgehaald als de eigenschapswaarde anders is dan de opgegeven waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliases: | INE |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Not
Geeft aan dat met deze cmdlet objecten worden opgehaald als de eigenschap niet bestaat of de waarde $null
of $false
heeft.
Bijvoorbeeld: Get-Service | Where-Object -Not "DependentServices"
Deze parameter is geïntroduceerd in Windows PowerShell 6.1.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NotContains
Geeft aan dat met deze cmdlet objecten worden opgehaald als geen van de items in de eigenschapswaarde exact overeenkomt met de opgegeven waarde.
Bijvoorbeeld: Get-Process | Where-Object ProcessName -NotContains "Svchost"
NotContains verwijst naar een verzameling waarden en is waar als de verzameling geen items bevat die exact overeenkomen met de opgegeven waarde. Als de invoer één object is, wordt dit door PowerShell geconverteerd naar een verzameling van één object.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliases: | INotContains |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NotIn
Geeft aan dat deze cmdlet objecten ophaalt als de waarde van de eigenschap niet exact overeenkomt met een van de opgegeven waarden.
Bijvoorbeeld: Get-Process | Where-Object -Value "svchost" -NotIn -Property ProcessName
Als de waarde van Value één object is, wordt dit door PowerShell geconverteerd naar een verzameling van één object.
Als de eigenschapswaarde van een object een matrix is, gebruikt PowerShell verwijzingsgelijkheid om een overeenkomst te bepalen. Where-Object
retourneert het object alleen als de waarde van Eigenschap en een waarde van Waarde niet hetzelfde exemplaar van een object zijn.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliases: | INotIn |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NotLike
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde niet overeenkomt met een waarde die jokertekens (*
) bevat.
Bijvoorbeeld: Get-Process | Where-Object ProcessName -NotLike "*host"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliases: | INotLike |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NotMatch
Geeft aan dat deze cmdlet objecten ophaalt wanneer de waarde van de eigenschap niet overeenkomt met de opgegeven reguliere expressie. Wanneer de invoer één object is, wordt de overeenkomende waarde opgeslagen in de $Matches
automatische variabele.
Bijvoorbeeld: Get-Process | Where-Object ProcessName -NotMatch "PowerShell"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliases: | INotMatch |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Property
Hiermee geeft u de naam van een eigenschap van het invoerobject. De eigenschap moet een exemplaareigenschap zijn, geen statische eigenschap. Dit is een positionele parameter, dus de naam , Eigenschap, is optioneel.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Value
Hiermee geeft u een eigenschapswaarde. De parameternaam , Waarde, is optioneel. Deze parameter accepteert jokertekens bij gebruik met de volgende vergelijkingsparameters:
- CLike
- CNotLike
- Als
- NotLike
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | PSObject |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
Invoerwaarden
U kunt elk object doorspezen naar deze cmdlet.
Uitvoerwaarden
Deze cmdlet retourneert de geselecteerde items uit de invoerobjectset.
Notities
PowerShell bevat de volgende aliassen voor Where-Object
:
- Alle platforms:
?
where
Vanaf Windows PowerShell 4.0 zijn Where
ForEach
methoden toegevoegd voor gebruik met verzamelingen.
Meer informatie over deze methoden vindt u hier about_arrays