Where-Object
Hiermee selecteert u objecten uit een verzameling op basis van hun eigenschapswaarden.
Syntaxis
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 cmdlet Where-Object
selecteert objecten met bepaalde eigenschapswaarden uit de verzameling objecten die eraan 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 eigenschapsnaam, een vergelijkingsoperator en een eigenschapswaarde op te geven.
Where-Object
retourneert alle objecten waarvoor de instructie scriptblok waar is.Met de volgende opdracht worden bijvoorbeeld processen opgehaald in de prioriteitsklasse
Normal
, dat wil gezegd, processen waarbij de waarde van de eigenschap PriorityClass gelijk is aanNormal
.Get-Process | Where-Object {$_.PriorityClass -eq "Normal"}
Alle PowerShell-vergelijkingsoperatoren zijn geldig in de indeling van het scriptblok. Zie about_Comparison_Operatorsvoor meer informatie.
vergelijkingsinstructie. U kunt ook een vergelijkingsinstructie schrijven, wat veel meer lijkt op natuurlijke taal. Vergelijkingsinstructies zijn geïntroduceerd in Windows PowerShell 3.0.
De volgende opdrachten krijgen 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
vergelijkingsoperators toe als parameters in eenWhere-Object
opdracht. Tenzij opgegeven, zijn alle operators hoofdlettergevoelig. Vóór Windows PowerShell 3.0 waren de vergelijkingsoperators in de PowerShell-taal alleen bruikbaar in scriptblokken.
Wanneer u één eigenschap opgeeft voor Where-Object
, wordt de waarde van de eigenschap door de cmdlet als een Boole-expressie behandeld. Wanneer de waarde van de Length van de eigenschap niet nul is, wordt de expressie geëvalueerd als $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_Booleansvoor 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 van het 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 met een werkset 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 met een ProcessName eigenschapswaarde die begint met de letter p
. Met de operator Match 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 vergelijkingsinstructie-indeling van de cmdlet Where-Object
gebruikt.
De eerste opdracht maakt gebruik van de indeling van de vergelijkingsinstructie. Er worden geen aliassen gebruikt en bevat de naam voor elke parameter.
De tweede opdracht is het natuurlijkeer gebruik van de vergelijkingsopdrachtindeling. Met de opdracht wordt de where
-alias vervangen door de naam van de Where-Object
cmdlet 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 een waarde hebben voor een opgegeven eigenschap. In elk voorbeeld worden zowel de indelingen van het scriptblok als de vergelijkingsinstructie voor de opdracht weergegeven.
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 maakt met meerdere voorwaarden.
Met deze opdracht worden niet-kernmodules opgehaald die ondersteuning bieden voor de functie Updatable Help. De opdracht maakt gebruik van de ListAvailable parameter van de Get-Module
cmdlet om alle modules op de computer op te halen. Een pijplijnoperator (|
) verzendt de modules naar de cmdlet Where-Object
, waarmee modules worden opgehaald waarvan de namen niet beginnen met Microsoft
of PS
, en een waarde hebben voor de eigenschap HelpInfoURI, waarmee PowerShell wordt aangegeven waar bijgewerkte Help-bestanden voor de module moeten worden gevonden. De logische operator -and
verbindt de vergelijkingsinstructies.
In het voorbeeld wordt de scriptblokopdrachtindeling gebruikt. Logische operators, zoals -and
,-or
en -not
zijn alleen geldig in scriptblokken. U kunt deze niet gebruiken in de vergelijkingsinstructieindeling van een Where-Object
opdracht.
- Zie about_Logical_Operatorsvoor meer informatie over logische PowerShell-operators.
- Zie about_Updatable_Helpvoor meer informatie over de Help-functie 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, converteert PowerShell het naar een verzameling van één object.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-CEQ
Geeft aan dat deze cmdlet objecten ophaalt 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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-CGE
Geeft aan dat deze cmdlet objecten ophaalt 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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-CGT
Geeft aan dat deze cmdlet objecten ophaalt 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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | 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 worden omgekeerd. 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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | 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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-CLike
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde overeenkomt met een waarde met jokertekens (*
). 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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-CLT
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde 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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | 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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-CNE
Geeft aan dat deze cmdlet objecten ophaalt 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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | 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, converteert PowerShell het naar een verzameling van één object.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-CNotIn
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde niet exact overeenkomt met de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
Bijvoorbeeld: Get-Process | Where-Object -Value "svchost" -CNotIn -Property ProcessName
Operators NotIn en CNotIn lijken op NotContains en CNotContains, behalve dat de eigenschaps- en waardeposities worden omgekeerd. De volgende instructies zijn bijvoorbeeld waar.
"abc", "def" -CNotContains "Abc"
"abc" -CNotIn "Abc", "def"
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-CNotLike
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde 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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-CNotMatch
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde 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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Contains
Geeft aan dat deze cmdlet objecten ophaalt als een item in de eigenschapswaarde van het object een exacte overeenkomst is voor de opgegeven waarde.
Bijvoorbeeld: Get-Process | Where-Object ProcessName -Contains "Svchost"
Als de invoer één object is, converteert PowerShell het naar een verzameling van één object.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | IContains |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-EQ
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde hetzelfde is als de opgegeven waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | IEQ |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | 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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-GE
Geeft aan dat deze cmdlet objecten ophaalt 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 |
Aliassen: | IGE |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-GT
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde groter is dan de opgegeven waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | IGT |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | 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, converteert PowerShell het naar een verzameling van één object.
Als de eigenschapswaarde van een object een matrix is, gebruikt PowerShell verwijzings gelijkheid 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 |
Aliassen: | IIn |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-InputObject
Hiermee geeft u de objecten die moeten worden gefilterd. U kunt de objecten ook doorspezen naar Where-Object
.
Wanneer u de parameter inputObject gebruikt met Where-Object
, worden de InputObject als één object behandeld in plaats van de opdrachtresultaten van piping om te Where-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 kan retourneren uit een matrix of verzameling objecten, raden we u aan om, als u Where-Object
gebruikt om een verzameling objecten te filteren op die objecten met specifieke waarden in gedefinieerde eigenschappen, gebruikt u Where-Object
in de pijplijn, zoals wordt weergegeven in de voorbeelden in dit onderwerp.
Type: | PSObject |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Is
Geeft aan dat deze cmdlet objecten ophaalt 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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-IsNot
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde geen exemplaar is van het opgegeven .NET-type.
Bijvoorbeeld Get-Process | where StartTime -IsNot [DateTime]
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | 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 |
Aliassen: | ILE |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Like
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde overeenkomt met een waarde met jokertekens (*
).
Bijvoorbeeld: Get-Process | Where-Object ProcessName -Like "*host"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | ILike |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | 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 |
Aliassen: | ILT |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | 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 |
Aliassen: | IMatch |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-NE
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde anders is dan de opgegeven waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | INE |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Not
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschap niet bestaat of een waarde van $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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-NotContains
Geeft aan dat deze cmdlet objecten ophaalt als geen van de items in de eigenschapswaarde een exacte overeenkomst is voor 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, converteert PowerShell het naar een verzameling van één object.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | INotContains |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-NotIn
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde niet exact overeenkomt met een van de opgegeven waarden.
Bijvoorbeeld: Get-Process | Where-Object -Value "svchost" -NotIn -Property ProcessName
Als de waarde van waarde één object is, converteert PowerShell het naar een verzameling van één object.
Als de eigenschapswaarde van een object een matrix is, gebruikt PowerShell verwijzings gelijkheid 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 |
Aliassen: | INotIn |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-NotLike
Geeft aan dat deze cmdlet objecten ophaalt als de eigenschapswaarde niet overeenkomt met een waarde met jokertekens (*
).
Bijvoorbeeld: Get-Process | Where-Object ProcessName -NotLike "*host"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | INotLike |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-NotMatch
Geeft aan dat deze cmdlet objecten ophaalt wanneer de eigenschapswaarde 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 |
Aliassen: | INotMatch |
Position: | Named |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Property
Hiermee geeft u de naam van een eigenschap van het invoerobject. De eigenschap moet een exemplaareigenschap zijn, niet een 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 |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Value
Hiermee geeft u een eigenschapswaarde op. De parameternaam, Waarde, is optioneel. Deze parameter accepteert jokertekens bij gebruik met de volgende vergelijkingsparameters:
- CLike-
- CNotLike-
- Like
- NotLike-
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | PSObject |
Position: | 1 |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | True |
Invoerwaarden
U kunt elk object doorsluisen naar deze cmdlet.
Uitvoerwaarden
Met deze cmdlet worden de geselecteerde items uit de invoerobjectset geretourneerd.
Notities
PowerShell bevat de volgende aliassen voor Where-Object
:
- Alle platforms:
?
where
Vanaf Windows PowerShell 4.0 zijn Where
- en ForEach
-methoden toegevoegd voor gebruik met verzamelingen.
Meer informatie over deze methoden vindt u hier about_arrays