Selecteert objecten uit een verzameling op basis van hun eigenschapswaarden.
- Syntax
- Description
- Voorbeelden
- Voorbeeld 1: Gestopte services ophalen
- Voorbeeld 2: Verkrijg processen op basis van werkset
- Voorbeeld 3: Processen ophalen op basis van procesnaam
- Voorbeeld 4: Gebruik het comparison statement format
- Voorbeeld 5: Haal commando’s op basis van eigenschappen
- Voorbeeld 6: Gebruik meerdere voorwaarden
- Parameters
- Inputs
- Outputs
- Notes
Syntax
Where-Object <String> <Object>]
Where-Object <ScriptBlock>
Where-Object <String> <Object>] -Match
Where-Object <String> <Object>] -CEQ
Where-Object <String> <Object>] -NE
Where-Object <String> <Object>] -CNE
Where-Object <String> <Object>] -GT
Where-Object <String> <Object>] -CGT
Where-Object <String> <Object>] -LT
Where-Object <String> <Object>] -CLT
Where-Object <String> <Object>] -GE
Where-Object <String> <Object>] -CGE
Where-Object <String> <Object>] -LE
Where-Object <String> <Object>] -CLE
Where-Object <String> <Object>] -Like
Where-Object <String> <Object>] -CLike
Where-Object <String> <Object>] -NotLike
Where-Object <String> <Object>] -CNotLike
Where-Object <String> <Object>] -CMatch
Where-Object <String> <Object>] -NotMatch
Where-Object <String> <Object>] -CNotMatch
Where-Object <String> <Object>] -Contains
Where-Object <String> <Object>] -CContains
Where-Object <String> <Object>] -NotContains
Where-Object <String> <Object>] -CNotContains
Where-Object <String> <Object>] -In
Where-Object <String> <Object>] -CIn
Where-Object <String> <Object>] -NotIn
Where-Object <String> <Object>] -CNotIn
Where-Object <String> <Object>] -Is
Where-Object <String> <Object>] -IsNot
Where-Object <String> -Not
Description
Het cmdlet Where-Object
selecteert objecten die bepaalde eigenschapwaarden hebben uit de verzameling objecten die eraan wordt doorgegeven. U kunt het cmdlet Where-Object
bijvoorbeeld gebruiken om bestanden te selecteren die na een bepaalde datum zijn gemaakt, gebeurtenissen met een bepaalde ID, of computers die een bepaalde versie van Windows gebruiken.
Beginnend in Windows PowerShell 3.0, zijn er twee verschillende manieren om een Where-Object
commando te construeren.
-
Scriptblok. U kunt een scriptblok gebruiken om de naam van de eigenschap, een vergelijkingsoperator en een waarde van de eigenschap op te geven.
Where-Object
retourneert alle objecten waarvoor de scriptblok-instructie waar is.De volgende opdracht krijgt bijvoorbeeld processen in de prioriteitsklasse Normaal, dat wil zeggen processen waarbij de waarde van de eigenschap PriorityClass gelijk is aan Normaal.
Get-Process | Where-Object {$_.PriorityClass -eq "Normal"}
Alle PowerShell-vergelijkingsoperatoren zijn geldig in de scriptblok-indeling. Zie voor meer informatie over vergelijkingsoperatoren:about_Comparison_Operators.
-
Vergelijkingsstatement. U kunt ook een vergelijkingsstatement schrijven, dat veel meer lijkt op een natuurlijke taal. Vergelijkingsstatements zijn geïntroduceerd in Windows PowerShell 3.0.
De volgende commando’s krijgen bijvoorbeeld ook processen die een prioriteitsklasse van Normaal hebben. Deze opdrachten zijn equivalent en kunnen door elkaar worden gebruikt.
Get-Process | Where-Object -Property PriorityClass -eq -Value "Normal"
Get-Process | Where-Object PriorityClass -eq "Normal"
Met ingang van Windows PowerShell 3.0 voegt
Where-Object
vergelijkingsoperatoren toe als parameters in eenWhere-Object
-opdracht. Tenzij gespecificeerd, zijn alle operatoren hoofdletterongevoelig. Vóór WindowsPowerShell 3.0 konden de vergelijkingsoperatoren in de PowerShell-taal alleen worden gebruikt in scriptblokken.
Wanneer u een enkele eigenschap opgeeft aan Where-Object
, wordt de waarde van de eigenschap behandeld als een booleaanse expressie. Wanneer de waarde van Length niet nul is, wordt de uitdrukking geëvalueerd alsTrue. Bijvoorbeeld: ('hi', '', 'there') | Where-Object Length
Het vorige voorbeeld is functioneel equivalent aan:
('hi', '', 'there') | Where-Object Length -GT 0
('hi', '', 'there') | Where-Object {$_.Length -gt 0}
Voorbeelden
Voorbeeld 1: Gestopte services ophalen
Deze opdrachten krijgen een lijst met alle services die momenteel zijn gestopt. De automatische variabele $_
vertegenwoordigt elk object dat aan het cmdlet Where-Object
wordt doorgegeven.
Het eerste commando gebruikt het scriptblok-formaat, het tweede commando gebruikt het vergelijkingsstatement-formaat. De commando’s zijn gelijkwaardig en kunnen door elkaar worden gebruikt.
Get-Service | Where-Object {$_.Status -eq "Stopped"}Get-Service | where Status -eq "Stopped"
Voorbeeld 2: Verkrijg processen op basis van werkset
Deze commando’s maken een lijst van processen die een werkset hebben die groter is dan 250 megabytes (KB). De syntaxis voor scriptblock en statement is gelijkwaardig en kan door elkaar worden gebruikt.
Get-Process | Where-Object {$_.WorkingSet -GT 250MB}Get-Process | Where-Object WorkingSet -GT (250MB)
Voorbeeld 3: Processen ophalen op basis van procesnaam
Deze opdrachten halen de processen op die een eigenschap ProcessName hebben die begint met de letter p
. Met de Match operator kunt u reguliere expressie matches gebruiken.
De scriptblock en statement syntax zijn gelijkwaardig en kunnen door elkaar worden gebruikt.
Get-Process | Where-Object {$_.ProcessName -Match "^p.*"}Get-Process | Where-Object ProcessName -Match "^p.*"
Voorbeeld 4: Gebruik het comparison statement format
Dit voorbeeld laat zien hoe u het nieuwe comparison statement format van het Where-Object
cmdlet kunt gebruiken.
Het eerste commando maakt gebruik van het comparison statement format.In dit commando worden geen aliassen gebruikt en alle parameters bevatten de parameternaam.
Het tweede commando is het meer natuurlijke gebruik van het comparison command format. De where
alias wordt vervangen door de Where-Object
cmdlet naam en alle optionele parameter namen worden weggelaten.
Get-Process | Where-Object -Property Handles -GE -Value 1000Get-Process | where Handles -GE 1000
Voorbeeld 5: Haal commando’s op basis van eigenschappen
Dit voorbeeld laat zien hoe u commando’s kunt schrijven die items teruggeven die waar of onwaar zijn of een willekeurige waarde hebben voor een gespecificeerde eigenschap. Elk voorbeeld toont zowel de indeling van het scriptblok als die van het vergelijkingsstatement voor de opdracht.
# 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 OutputTypeGet-Command | where {$_.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 PSIsContainerGet-ChildItem | where {$_.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 {!$_.PSIsContainer}# You cannot use the Not operator (!) in the comparison statement format of the command.Get-ChildItem | where PSIsContainer -eq $False
Voorbeeld 6: Gebruik meerdere voorwaarden
Get-Module -ListAvailable | where {($_.Name -notlike "Microsoft*" -and $_.Name -notlike "PS*") -and $_.HelpInfoUri}
Dit voorbeeld laat zien hoe u een Where-Object
-opdracht met meerdere voorwaarden maakt.
Deze opdracht haalt niet-kernmodules op die de functie Updatable Help ondersteunen. De opdracht gebruikt de parameterListAvailable van het cmdlet Get-Module
om alle modules op de computer te krijgen. De module wordt doorgestuurd naar het cmdlet Where-Object
, dat de modules ophaalt waarvan de naam niet begint met Microsoft of PS, en een waarde heeft voor de eigenschap HelpInfoURI, die PowerShell vertelt waar de bijgewerkte Help-bestanden voor de module te vinden zijn. De vergelijkingsstatements worden verbonden door de logische operator And.
In het voorbeeld wordt de opdrachtopmaak van het scriptblok gebruikt. Logische operatoren, zoals En en Of, zijn alleen geldig in scriptblokken. U kunt ze niet gebruiken in het vergelijkend statement-formaat van eenWhere-Object
-commando.
- Voor meer informatie over PowerShell logische operatoren, zie about_Logical_Operators.
- Voor meer informatie over de functie Updatable Help, zie about_Updatable_Help.
Parameters
Geeft aan dat dit cmdlet objecten uit een collectie haalt indien de eigenschap waarde van het object een exacte overeenkomst is voor de gespecificeerde waarde. Deze bewerking is hoofdlettergevoelig.
Bijv: Get-Process | where ProcessName -CContains "svchost"
CContains verwijst naar een verzameling waarden en is waar als de verzameling een object bevat dat exact overeenkomt met de opgegeven waarde. Als de invoer een enkel object is, converteert PowerShell dit naar een verzameling van één object.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Positie: | Naam |
Voorkeurwaarde: | None |
Accepteer invoer via pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap gelijk is aan de gespecificeerde waarde.Deze bewerking is hoofdlettergevoelig.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Positie: | Naam |
Voorkeurwaarde: | None |
Accepteer invoer via pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap groter of gelijk is aan de gespecificeerde waarde. Deze bewerking is hoofdlettergevoelig.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Positie: | Naam |
Voorkeurwaarde: | None |
Accepteer invoer via pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap groter is dan de gespecificeerde waarde.Deze bewerking is hoofdlettergevoelig.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Positie: | Naam |
Standaardwaarde: | None |
Accepteer invoer via pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt indien de property waarde de gespecificeerde waarde bevat. Deze bewerking is hoofdlettergevoelig.
Bijv: Get-Process | where -Value "svchost" -CIn ProcessName
CIn lijkt op CContains, behalve dat de posities van de eigenschap en de waarde zijn omgedraaid. 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 |
Positie: | Naam |
Voorkeurwaarde: | None |
Accepteer invoer via pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap kleiner dan of gelijk is aan de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Positie: | Naam |
Voorkeurwaarde: | None |
Accepteer invoer via pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap overeenkomt met een waarde die wildcardcharacters bevat. Deze bewerking is hoofdlettergevoelig.
Bijv: Get-Process | where ProcessName -CLike "*host"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Positie: | Naam |
Voorkeurwaarde: | None |
Accepteer invoer via pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap kleiner is dan de gespecificeerde waarde. Deze bewerking is hoofdlettergevoelig.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Positie: | Naam |
Voorkeurwaarde: | None |
Accepteer pijplijninvoer: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt indien de eigenschap waarde overeenkomt met de gespecificeerde regularexpression. Deze bewerking is hoofdlettergevoelig. Als de invoer scalair is, wordt de gematchte waarde opgeslagen in $Matches
automatische variabele.
Voorbeeld: Get-Process | where ProcessName -CMatch "Shell"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Positie: | Naam |
Standaardwaarde: | None |
Accepteer invoer via pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap anders is dan de opgegeven waarde.Deze bewerking is hoofdlettergevoelig.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Positie: | Naam |
Voorkeurwaarde: | None |
Accepteer pijplijninvoer: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de property waarde van het object geen exacte match is voor de opgegeven waarde. Deze bewerking is hoofdlettergevoelig.
Bijv: Get-Process | where ProcessName -CNotContains "svchost"
NotContains en CNotContains hebben betrekking op een verzameling waarden en zijn waar als de verzameling geen items bevat die exact overeenkomen met de opgegeven waarde. Als de invoer een enkel object is, converteert PowerShell het naar een verzameling van één object.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Naam |
Standaardwaarde: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt indien de property waarde geen exacte match is voor de gespecificeerde waarde. Deze bewerking is hoofdlettergevoelig.
Bijv: Get-Process | where -Value "svchost" -CNotIn -Property ProcessName
NotIn en CNotIn operatoren lijken op NotContains en CNotContains, behalve dat de posities van de eigenschap en de waarde zijn omgedraaid. De volgende beweringen zijn bijvoorbeeld waar.
"abc", "def" -CNotContains "Abc"
"abc" -CNotIn "Abc", "def"
Type: | SwitchParameter |
Positie: | Naam |
Voorkeurwaarde: | None |
Accepteer invoer via pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap niet overeenkomt met een waarde die wildcard characters bevat. Deze bewerking is hoofdlettergevoelig.
Bijv: Get-Process | where ProcessName -CNotLike "*host"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Positie: | Naam |
Voorkeurwaarde: | None |
Accepteer pijplijninvoer: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de property waarde niet overeenkomt met de gespecificeerde regularexpression. Deze operatie is hoofdlettergevoelig. Als de invoer scalair is, wordt de gematchte waarde opgeslagen in $Matches
automatische variabele.
Bijv: Get-Process | where ProcessName -CNotMatch "Shell"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt indien enig item in de property waarde van het object een exacte match is voor de gespecificeerde waarde.
Voorbeeld: Get-Process | where ProcessName -Contains "Svchost"
Als de waarde van de eigenschap een enkel object bevat, converteert PowerShell deze naar een verzameling van éénobject.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | IContains |
Position: | Naam |
Standaardwaarde: | Neen |
Accepteer pijplijninvoer: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap gelijk is aan de opgegeven waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | IEQ |
Positie: | Naam |
Standaardwaarde: | Neen |
Accepteer invoer pijplijn: | False |
Accept wildcard characters: | False |
Specificeert het scriptblok dat wordt gebruikt om de objecten te filteren. Zet het scriptblok tussen accolades({}
).
De parameternaam, FilterScript, is optioneel.
Type: | ScriptBlock |
Position: | 0 |
Default value: | None |
Accepteer pijplijninvoer: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap groter of gelijk is aan de gespecificeerde waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | IGE |
Positie: | Naam |
Standaardwaarde: | Neen |
Accepteer invoer pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap groter is dan de gespecificeerde waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | IGT |
Positie: | Naam |
Standaardwaarde: | Neen |
Accepteer invoer pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap overeenkomt met een van de opgegeven waarden.Bijvoorbeeld:
Get-Process | where -Property ProcessName -in -Value "Svchost", "TaskHost", "WsmProvHost"
Als de waarde van de parameter Waarde een enkel object is, converteert PowerShell deze naar een verzameling van één object.
Als de eigenschapswaarde van een object een array is, gebruikt PowerShell referentiegelijkheid om de overeenkomst te bepalen. Where-Object
retourneert het object alleen als de waarde van de eigenschapsparameter en een willekeurige waarde van Waarde dezelfde instantie van een object zijn.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | IIn |
Positie: | Naam |
Voorkeurwaarde: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specificeert de objecten die gefilterd moeten worden. U kunt de objecten ook naar Where-Object
pipen.
Wanneer u de parameter InputObject met Where-Object
gebruikt, in plaats van de opdrachtresultaten naarWhere-Object
te pipen, wordt de InputObject-waarde als een enkel object behandeld. Dit geldt zelfs als de waarde een verzameling is die het resultaat is van een opdracht, zoals -InputObject (Get-Process)
. OmdatInputObject geen afzonderlijke eigenschappen uit een matrix of een verzameling objecten kan retourneren, raden wij u aan Where-Object
in de pijplijn te gebruiken als u Where-Object
gebruikt om een verzameling objecten te filteren op die objecten die specifieke waarden hebben in gedefinieerde eigenschappen, zoals wordt weergegeven in de voorbeelden in dit onderwerp.
Type: | PSObject |
Positie: | Naam |
Voorkeurwaarde: | None |
Accepteer invoer in de pijplijn: | True |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt indien de property waarde een instantie is van het gespecificeerde .NETtype is. Zet de naam van het type tussen vierkante haken.
Bijv. Get-Process | where StartTime -Is
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Positie: | Naam |
Voorkeurwaarde: | None |
Accepteer invoer via pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt indien de property waarde geen instantie is van het gespecificeerde.NET type.
Bijv. Get-Process | where StartTime -IsNot
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Positie: | Naam |
Voorkeurwaarde: | None |
Accepteer invoer via pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap kleiner of gelijk is aan de gespecificeerde waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | ILE |
Position: | Naam |
Standaardwaarde: | Geen |
Accepteer pijplijninvoer: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt indien de property waarde overeenkomt met een waarde die wildcardcharacters bevat.
Bijv: Get-Process | where ProcessName -Like "*host"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | ILike |
Positie: | Naam |
Standaardwaarde: | Neen |
Accepteer invoer pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap kleiner is dan de opgegeven waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | ILT |
Positie: | Naam |
Standaardwaarde: | Neen |
Accepteer invoer pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt indien de eigenschap waarde overeenkomt met de gespecificeerde regularexpression. Als de invoer scalair is, wordt de gematchte waarde opgeslagen in $Matches
automatische variabele.
Voorbeeld: Get-Process | where ProcessName -Match "shell"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | IMatch |
Positie: | Naam |
Standaardwaarde: | Neen |
Accepteer pijplijninvoer: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap anders is dan de opgegeven waarde.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | INE |
Positie: | Naam |
Standaardwaarde: | Neen |
Accepteer pijplijninvoer: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt indien de eigenschap niet bestaat of een waarde heeft van null offalse.
Voorbeeld: Get-Service | where -Not "DependentServices"
Deze parameter is geïntroduceerd in Windows PowerShell 6.1.
Type: | SwitchParameter |
Positie: | Naam |
Standaardwaarde: | None |
Accepteer invoer via pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt indien geen van de items in de property waarde een exacte match is voor de gespecificeerde waarde.
Bijvoorbeeld: Get-Process | where 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 een enkel object is, converteert PowerShell dit naar een verzameling van één object.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | INotContains |
Position: | Naam |
Standaardwaarde: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt indien de property waarde geen exacte match is voor een van de gespecificeerde waardes.
Voorbeeld: Get-Process | where -Value "svchost" -NotIn -Property ProcessName
Als de waarde van Waarde een enkel object is, converteert PowerShell dit naar een verzameling van één object.
Als de eigenschapswaarde van een object een array is, gebruikt PowerShell referentiegelijkheid om amatch te bepalen. Where-Object
retourneert het object alleen als de waarde van Property en een willekeurige waarde vanValue niet dezelfde instantie van een object zijn.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | INotIn |
Positie: | Naam |
Standaardwaarde: | Neen |
Accepteer pijplijninvoer: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt als de waarde van de eigenschap niet overeenkomt met een waarde die wildcard characters bevat.
Bijv: Get-Process | where ProcessName -NotLike "*host"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | INotLike |
Positie: | Naam |
Standaardwaarde: | Neen |
Accepteer invoer pijplijn: | False |
Accept wildcard characters: | False |
Geeft aan dat dit cmdlet objecten krijgt wanneer de eigenschap waarde niet overeenkomt met de gespecificeerde regularexpressie. Wanneer de invoer scalair is, wordt de gematchte waarde opgeslagen in $Matches
automatische variabele.
Voorbeeld: Get-Process | where ProcessName -NotMatch "PowerShell"
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | SwitchParameter |
Aliassen: | INotMatch |
Positie: | Naam |
Voorkeurwaarde: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Specificeert de naam van een object eigenschap. De parameternaam, Property, is optioneel.
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | String |
Position: | 0 |
Default value: | None |
Accepteer pijplijninvoer: | Valse |
Accepteer jokertekens: | False |
Specificeert een eigenschapswaarde. De parameternaam, Waarde, is optioneel. Deze parameter accepteert wildcard-tekens wanneer deze wordt gebruikt met de volgende vergelijkingsparameters:
- CLike
- CNotLike
- Like
- NotLike
Deze parameter is geïntroduceerd in Windows PowerShell 3.0.
Type: | Object |
Position: | 1 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | True |
Inputs
PSObject
Je kunt de objecten naar dit cmdlet pijpen.
Outputs
Object
Dit cmdlet retourneert geselecteerde items van de set invoerobjecten.
Notes
Met ingang van Windows PowerShell 4.0 zijn de methoden Where
en ForEach
toegevoegd voor gebruik met verzamelingen.
U kunt hier meer lezen over deze nieuwe methoden about_arrays
- Compare-Object
- ForEvery-Object
- Group-Object
- Meet-Object
- Nieuw-Object
- Select-Object
- Sort-Object
- Tee-Object