Share via


Where-Object

Sélectionne les objets d'une collection en fonction de leurs valeurs de propriété.

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

L’applet Where-Object de commande sélectionne les objets qui ont des valeurs de propriété particulières à partir de la collection d’objets qui lui sont passés. Par exemple, vous pouvez utiliser l’applet Where-Object de commande pour sélectionner des fichiers créés après une date donnée, des événements avec un ID particulier ou des ordinateurs qui utilisent une version particulière de Windows.

À partir de Windows PowerShell 3.0, il existe deux façons différentes de construire une Where-Object commande.

  • Bloc de script. Vous pouvez utiliser un bloc de script pour spécifier le nom de propriété, un opérateur de comparaison et une valeur de propriété. Where-Object retourne tous les objets pour lesquels l’instruction de bloc de script a la valeur true.

    Par exemple, la commande suivante obtient les processus de la Normal classe priority, c’est-à-dire les processus où la valeur de la propriété PriorityClass est Normalégale à .

    Get-Process | Where-Object {$_.PriorityClass -eq "Normal"}

    Tous les opérateurs de comparaison PowerShell sont valides au format de bloc de script. Pour plus d’informations, consultez about_Comparison_Operators.

  • Instruction de comparaison. Vous pouvez également écrire une instruction de comparaison, laquelle se rapproche beaucoup plus du langage naturel. Les instructions de comparaison ont été introduites dans Windows PowerShell 3.0.

    Par exemple, les commandes suivantes obtiennent également des processus qui ont une classe de priorité de Normal. Ces commandes sont équivalentes et peuvent être utilisées de manière interchangeable.

    Get-Process | Where-Object -Property PriorityClass -eq -Value "Normal"

    Get-Process | Where-Object PriorityClass -eq "Normal"

    À partir de Windows PowerShell 3.0, Where-Object ajoute des opérateurs de comparaison en tant que paramètres dans une Where-Object commande. Sauf indication contraire, tous les opérateurs respectent la casse. Avant Windows PowerShell 3.0, les opérateurs de comparaison dans le langage PowerShell ne pouvaient être utilisés que dans les blocs de script.

Lorsque vous fournissez une propriété unique à Where-Object, la valeur de la propriété est traitée comme une expression booléenne. Lorsque la valeur de Length n’est pas égale à $truezéro, l’expression prend la valeur . Par exemple : ('hi', '', 'there') | Where-Object Length

L’exemple précédent est fonctionnellement équivalent à :

  • ('hi', '', 'there') | Where-Object Length -GT 0
  • ('hi', '', 'there') | Where-Object {$_.Length -gt 0}

Pour plus d’informations sur la façon dont les booléens sont évalués, consultez about_Booleans.

Exemples

Exemple 1 : Obtenir des services arrêtés

Ces commandes obtiennent une liste de tous les services actuellement arrêtés. La $_ variable automatique représente chaque objet passé à l’applet de Where-Object commande.

La première commande utilise le format de bloc de script, et la deuxième commande utilise le format d’instruction de comparaison. Les commandes sont équivalentes et peuvent être utilisées indifféremment.

Get-Service | Where-Object {$_.Status -eq "Stopped"}
Get-Service | where Status -eq "Stopped"

Exemple 2 : Obtenir des processus basés sur un ensemble de travail

Ces commandes répertorient les processus dont l’ensemble de travail est supérieur à 250 mégaoctets (Mo). Le scriptblock et la syntaxe d’instruction sont équivalents et peuvent être utilisés de manière interchangeable.

Get-Process | Where-Object {$_.WorkingSet -GT 250MB}
Get-Process | Where-Object WorkingSet -GT (250MB)

Exemple 3 : Obtenir des processus basés sur le nom du processus

Ces commandes obtiennent les processus qui ont une valeur de propriété ProcessName qui commence par la lettre p. L’opérateur Match vous permet d’utiliser des correspondances d’expressions régulières.

Le scriptblock et la syntaxe d’instruction sont équivalents et peuvent être utilisés de manière interchangeable.

Get-Process | Where-Object {$_.ProcessName -Match "^p.*"}
Get-Process | Where-Object ProcessName -Match "^p.*"

Exemple 4 : Utiliser le format d’instruction de comparaison

Cet exemple montre comment utiliser le nouveau format d’instruction de comparaison de l’applet Where-Object de commande.

La première commande utilise le format d'instruction de comparaison. Dans cette commande, aucun alias n'est utilisé. En outre, tous les paramètres incluent le nom de paramètre.

La deuxième commande représente l'utilisation la plus naturelle du format de commande de comparaison. L’alias where est remplacé par le nom de l’applet Where-Object de commande et tous les noms de paramètres facultatifs sont omis.

Get-Process | Where-Object -Property Handles -GE -Value 1000
Get-Process | where Handles -GE 1000

Exemple 5 : Obtenir des commandes basées sur des propriétés

Cet exemple montre comment écrire des commandes qui retournent des éléments ayant la valeur true ou false, ou ayant une valeur correspondant à une propriété spécifique. Chaque exemple montre à la fois le bloc de script et les formats d’instruction de comparaison pour la commande.

# 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 OutputType
Get-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 PSIsContainer
Get-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

Exemple 6 : Utiliser plusieurs conditions

Get-Module -ListAvailable | where {
    ($_.Name -notlike "Microsoft*" -and $_.Name -notlike "PS*") -and $_.HelpInfoUri
}

Cet exemple montre comment créer une Where-Object commande avec plusieurs conditions.

Cette commande obtient les modules qui ne sont pas des modules de base et qui prennent en charge la fonctionnalité d'aide actualisable. La commande utilise le paramètre ListAvailable de l’applet Get-Module de commande pour obtenir tous les modules sur l’ordinateur. Un opérateur de pipeline (|) envoie les modules à l’applet Where-Object de commande, qui obtient les modules dont les noms ne commencent pas par Microsoft ou PS, et ont une valeur pour la propriété HelpInfoURI , qui indique à PowerShell où trouver les fichiers d’aide mis à jour pour le module. Les instructions de comparaison sont connectées par l’opérateur logique And .

L'exemple utilise le format de commande de bloc de script. Les opérateurs logiques, tels que And et Or, sont valides uniquement dans les blocs de script. Vous ne pouvez pas les utiliser dans le format d’instruction de comparaison d’une Where-Object commande.

  • Pour plus d’informations sur les opérateurs logiques PowerShell, consultez about_Logical_Operators.
  • Pour plus d’informations sur la fonctionnalité d’aide pouvant être mise à jour, consultez about_Updatable_Help.

Paramètres

-CContains

Indique que cette applet de commande obtient des objets d’une collection si la valeur de propriété de l’objet correspond exactement à la valeur spécifiée. Cette opération respecte la casse.

Par exemple : Get-Process | where ProcessName -CContains "svchost"

CContains fait référence à une collection de valeurs et a la valeur true si la collection contient un élément qui correspond exactement à la valeur spécifiée. Si l’entrée est un seul objet, PowerShell la convertit en une collection d’un objet.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CEQ

Indique que cette applet de commande obtient des objets si la valeur de la propriété est identique à la valeur spécifiée. Cette opération respecte la casse.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CGE

Indique que cette applet de commande obtient des objets si la valeur de la propriété est supérieure ou égale à la valeur spécifiée. Cette opération respecte la casse.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CGT

Indique que cette applet de commande obtient des objets si la valeur de la propriété est supérieure à la valeur spécifiée. Cette opération respecte la casse.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CIn

Indique que cette applet de commande obtient des objets si la valeur de propriété inclut la valeur spécifiée. Cette opération respecte la casse.

Par exemple : Get-Process | where -Value "svchost" -CIn ProcessName

CIn ressemble à CContains, sauf que les positions de propriété et de valeur sont inversées. Par exemple, les instructions suivantes sont toutes les deux vraies.

"abc", "def" -CContains "abc"

"abc" -CIn "abc", "def"

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CLE

Indique que cette applet de commande obtient des objets si la valeur de la propriété est inférieure ou égale à la valeur spécifiée. Cette opération respecte la casse.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CLike

Indique que cette applet de commande obtient des objets si la valeur de la propriété correspond à une valeur qui inclut des caractères génériques (*). Cette opération respecte la casse.

Par exemple : Get-Process | where ProcessName -CLike "*host"

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CLT

Indique que cette applet de commande obtient des objets si la valeur de la propriété est inférieure à la valeur spécifiée. Cette opération respecte la casse.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CMatch

Indique que cette applet de commande obtient des objets si la valeur de la propriété correspond à l’expression régulière spécifiée. Cette opération respecte la casse. Lorsque l’entrée est scalaire, la valeur correspondante est enregistrée dans une $Matches variable automatique.

Par exemple : Get-Process | where ProcessName -CMatch "Shell"

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CNE

Indique que cette applet de commande obtient des objets si la valeur de la propriété est différente de la valeur spécifiée. Cette opération respecte la casse.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CNotContains

Indique que cette applet de commande obtient des objets si la valeur de propriété de l’objet ne correspond pas exactement à la valeur spécifiée. Cette opération respecte la casse.

Par exemple : Get-Process | where ProcessName -CNotContains "svchost"

NotContains et CNotContains font référence à une collection de valeurs et sont true lorsque la collection ne contient pas d’éléments qui correspondent exactement à la valeur spécifiée. Si l’entrée est un seul objet, PowerShell la convertit en une collection d’un objet.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CNotIn

Indique que cette applet de commande obtient des objets si la valeur de la propriété ne correspond pas exactement à la valeur spécifiée. Cette opération respecte la casse.

Par exemple : Get-Process | where -Value "svchost" -CNotIn -Property ProcessName

Les opérateurs NotIn et CNotIn ressemblent à NotContains et CNotContains, sauf que les positions de propriété et de valeur sont inversées. Par exemple, les instructions suivantes sont vraies.

"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

Indique que cette applet de commande obtient des objets si la valeur de la propriété ne correspond pas à une valeur qui inclut des caractères génériques. Cette opération respecte la casse.

Par exemple : Get-Process | where ProcessName -CNotLike "*host"

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CNotMatch

Indique que cette applet de commande obtient des objets si la valeur de la propriété ne correspond pas à l’expression régulière spécifiée. Cette opération respecte la casse. Lorsque l’entrée est scalaire, la valeur correspondante est enregistrée dans une $Matches variable automatique.

Par exemple : Get-Process | where ProcessName -CNotMatch "Shell"

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Contains

Indique que cette applet de commande obtient des objets si un élément de la valeur de propriété de l’objet correspond exactement à la valeur spécifiée.

Par exemple : Get-Process | where ProcessName -Contains "Svchost"

Si la valeur de la propriété contient un objet unique, PowerShell le convertit en une collection d’un objet.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Aliases:IContains
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-EQ

Indique que cette applet de commande obtient des objets si la valeur de la propriété est identique à la valeur spécifiée.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Aliases:IEQ
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FilterScript

Spécifie le bloc de script utilisé pour filtrer les objets. Placez le bloc de script dans des accolades ({}).

Le nom du paramètre , FilterScript, est facultatif.

Type:ScriptBlock
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-GE

Indique que cette applet de commande obtient des objets si la valeur de la propriété est supérieure ou égale à la valeur spécifiée.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Aliases:IGE
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-GT

Indique que cette applet de commande obtient des objets si la valeur de la propriété est supérieure à la valeur spécifiée.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Aliases:IGT
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-In

Indique que cette applet de commande obtient des objets si la valeur de la propriété correspond à l’une des valeurs spécifiées. Par exemple :

Get-Process | where -Property ProcessName -in -Value "Svchost", "TaskHost", "WsmProvHost"

Si la valeur du paramètre Value est un objet unique, PowerShell le convertit en une collection d’un objet.

Si la valeur de propriété d’un objet est un tableau, PowerShell utilise l’égalité de référence pour déterminer une correspondance. Where-Objectretourne l’objet uniquement si la valeur du paramètre Property et toute valeur de Value sont les mêmes instance d’un objet.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Aliases:IIn
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Spécifie les objets à filtrer. Vous pouvez également diriger les objets vers Where-Object.

Lorsque vous utilisez le paramètre InputObject avec Where-Object, au lieu de rediriger les résultats de la commande vers Where-Object, la valeur InputObject est traitée comme un objet unique. Cela est vrai même si la valeur est une collection qui est le résultat d’une commande, telle que -InputObject (Get-Process). Étant donné qu’InputObject ne peut pas retourner des propriétés individuelles à partir d’un tableau ou d’une collection d’objets, nous vous recommandons, si vous utilisez Where-Object pour filtrer une collection d’objets pour les objets qui ont des valeurs spécifiques dans des propriétés définies, d’utiliser Where-Object dans le pipeline, comme illustré dans les exemples de cette rubrique.

Type:PSObject
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Is

Indique que cette applet de commande obtient des objets si la valeur de la propriété est un instance du type .NET spécifié. Placez le nom du type entre crochets.

Par exemple : Get-Process | where StartTime -Is [DateTime]

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-IsNot

Indique que cette applet de commande obtient des objets si la valeur de la propriété n’est pas une instance du type .NET spécifié.

Par exemple : Get-Process | where StartTime -IsNot [DateTime]

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-LE

Indique que cette applet de commande obtient des objets si la valeur de la propriété est inférieure ou égale à la valeur spécifiée.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Aliases:ILE
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Like

Indique que cette applet de commande obtient des objets si la valeur de la propriété correspond à une valeur qui inclut des caractères génériques (*).

Par exemple : Get-Process | where ProcessName -Like "*host"

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Aliases:ILike
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-LT

Indique que cette applet de commande obtient des objets si la valeur de la propriété est inférieure à la valeur spécifiée.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Aliases:ILT
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Match

Indique que cette applet de commande obtient des objets si la valeur de la propriété correspond à l’expression régulière spécifiée. Lorsque l’entrée est scalaire, la valeur correspondante est enregistrée dans une $Matches variable automatique.

Par exemple : Get-Process | where ProcessName -Match "shell"

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Aliases:IMatch
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NE

Indique que cette applet de commande obtient des objets si la valeur de la propriété est différente de la valeur spécifiée.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Aliases:INE
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Not

Indique que cette applet de commande obtient des objets si la propriété n’existe pas ou a la valeur ou $null$false.

Par exemple : Get-Service | where -Not "DependentServices"

Ce paramètre a été introduit dans Windows PowerShell 6.1.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NotContains

Indique que cette applet de commande obtient des objets si aucun des éléments de la valeur de propriété ne correspond exactement à la valeur spécifiée.

Par exemple : Get-Process | where ProcessName -NotContains "Svchost"

NotContains fait référence à une collection de valeurs et a la valeur true si la collection ne contient aucun élément qui correspond exactement à la valeur spécifiée. Si l’entrée est un seul objet, PowerShell la convertit en une collection d’un objet.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Aliases:INotContains
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NotIn

Indique que cette applet de commande obtient des objets si la valeur de la propriété ne correspond pas exactement à l’une des valeurs spécifiées.

Par exemple : Get-Process | where -Value "svchost" -NotIn -Property ProcessName

Si la valeur de Value est un objet unique, PowerShell le convertit en une collection d’un objet.

Si la valeur de propriété d’un objet est un tableau, PowerShell utilise l’égalité de référence pour déterminer une correspondance. Where-Objectretourne l’objet uniquement si la valeur de Property et toute valeur de Valeur ne sont pas les mêmes instance d’un objet.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Aliases:INotIn
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NotLike

Indique que cette applet de commande obtient des objets si la valeur de la propriété ne correspond pas à une valeur qui comprend des caractères génériques (*).

Par exemple : Get-Process | where ProcessName -NotLike "*host"

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Aliases:INotLike
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NotMatch

Indique que cette applet de commande obtient des objets lorsque la valeur de la propriété ne correspond pas à l’expression régulière spécifiée. Lorsque l’entrée est scalaire, la valeur correspondante est enregistrée dans une $Matches variable automatique.

Par exemple : Get-Process | where ProcessName -NotMatch "PowerShell"

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:SwitchParameter
Aliases:INotMatch
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Property

Spécifie le nom d'une propriété d'objet. Le nom du paramètre, Property, est facultatif.

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Value

Spécifie une valeur de propriété. Le nom du paramètre, Value, est facultatif. Ce paramètre accepte les caractères génériques lorsqu’il est utilisé avec les paramètres de comparaison suivants :

  • CLike
  • CNotLike
  • Comme
  • NotLike

Ce paramètre a été introduit dans Windows PowerShell 3.0.

Type:Object
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

Entrées

PSObject

Vous pouvez diriger les objets vers cette applet de commande.

Sorties

Object

Cette applet de commande retourne les éléments sélectionnés à partir de l’ensemble d’objets d’entrée.

Notes

À partir de Windows PowerShell 4.0, Where et ForEach des méthodes ont été ajoutées pour une utilisation avec des collections.

Vous pouvez en savoir plus sur ces méthodes ici about_arrays