Bonjour tout le monde
Bienvenue à CloudAffaire et voici Debjeet.
Dans le dernier billet de blog, nous avons discuté du cmdlet Sort-Object dans PowerShell.
Dans ce billet de blog, nous allons discuter du cmdlet Where-Object dans PowerShell. Vous pouvez utiliser la cmdlet Where-Object pour filtrer les objets en fonction de certains critères dans PowerShell. Vous devez définir le nom de la propriété et la condition de filtrage et où l’objet retournera les objets qui remplissent la condition. Par exemple, supposons que vous vouliez obtenir les services qui sont arrêtés. Vous pouvez utiliser la commande Get-Service | Where-Object Status -eq Stopped pour obtenir tous les services arrêtés. La condition dans le cmdlet Where-Object peut être fournie de deux façons. Vous pouvez utiliser un bloc de script pour spécifier le nom de la propriété, un opérateur de comparaison et une valeur de propriété. Where-Object renvoie tous les objets pour lesquels l’instruction du bloc de script est vraie. Vous pouvez également écrire une instruction de comparaison, qui ressemble beaucoup plus au langage naturel.
Syntaxe du cmdlet Where-Object :
1
2
3
4
. 5
6
7
8
9
10
11
|
## Où-Objet
##
## <String>
## <Objet>]
## <ScriptBlock>
## | | | | | | | | |
## | | | | | |
## | | | | |
## | | | |
## | | | |
##
|
Where-Liste des arguments de la cmdlet Object :
- -FilterScript : Spécifie le bloc de script qui est utilisé pour filtrer les objets. Entourez le bloc de script d’accolades ({}).
- -InputObject : Spécifie les objets à filtrer. Vous pouvez également acheminer les objets vers Where-Object.
- -Property : Spécifie le nom d’une propriété d’objet. Le nom du paramètre, Property, est facultatif.
- -Value : Spécifie la valeur d’une propriété. Le nom du paramètre, Valeur, est facultatif.
- -Contenu : La valeur de la propriété de l’objet est une correspondance exacte pour la valeur spécifiée.
- -Contains : La valeur de la propriété de l’objet est une correspondance exacte pour la valeur spécifiée. Cette opération est sensible à la casse.
- -NotContains : Si aucun des éléments de la valeur de la propriété ne constitue une correspondance exacte pour la valeur spécifiée.
- -CNotContains : Si la valeur de la propriété de l’objet n’est pas une correspondance exacte pour la valeur spécifiée. Cette opération est sensible à la casse.
- -EQ : La valeur de la propriété est la même que la valeur spécifiée.
- -CEQ : La valeur de la propriété est la même que la valeur spécifiée. Cette opération est sensible à la casse.
- -NE : La valeur de la propriété est différente de la valeur spécifiée.
- -CNE : La valeur de la propriété est différente de la valeur spécifiée. Cette opération est sensible à la casse.
- -GE : La valeur de la propriété est supérieure ou égale à la valeur spécifiée.
- -CGE : La valeur de la propriété est supérieure ou égale à la valeur spécifiée. Cette opération est sensible à la casse.
- -GT : La valeur de la propriété est supérieure à la valeur spécifiée.
- -CGT : La valeur de la propriété est supérieure à la valeur spécifiée. Cette opération est sensible à la casse.
- -In : La valeur de la propriété correspond à l’une des valeurs spécifiées.
- -CIn : La valeur de la propriété inclut la valeur spécifiée. Cette opération est sensible à la casse.
- -NotIn : La valeur de la propriété n’est pas une correspondance exacte pour l’une des valeurs spécifiées.
- -CNotIn : Si la valeur de la propriété n’est pas une correspondance exacte pour la valeur spécifiée. Cette opération est sensible à la casse.
- -LE : La valeur de la propriété est inférieure ou égale à la valeur spécifiée.
- -CLE : La valeur de la propriété est inférieure ou égale à la valeur spécifiée. Cette opération est sensible à la casse.
- -Like : La valeur de la propriété correspond à une valeur qui comprend des caractères génériques.
- -CLike : La valeur de la propriété correspond à une valeur qui comprend des caractères génériques. Cette opération est sensible à la casse.
- -NotLike : Si la valeur de la propriété ne correspond pas à une valeur qui comprend des caractères génériques.
- -CNotLike : Si la valeur de la propriété ne correspond pas à une valeur qui comprend des caractères génériques. Cette opération est sensible à la casse.
- -LT : La valeur de la propriété est inférieure à la valeur spécifiée.
- -CLT : La valeur de la propriété est inférieure à la valeur spécifiée. Cette opération est sensible à la casse.
- -Match : La valeur de la propriété correspond à l’expression régulière spécifiée.
- -CMatch : La valeur de la propriété correspond à l’expression régulière spécifiée. Cette opération est sensible à la casse.
- -NotMatch : Si la valeur de la propriété ne correspond pas à l’expression régulière spécifiée.
- -CNotMatch : Si la valeur de la propriété ne correspond pas à l’expression régulière spécifiée. Cette opération est sensible à la casse.
- -Is : La valeur de la propriété est une instance du type .NET spécifié. Encadrez le nom du type entre crochets.
- -IsNot : Si la valeur de la propriété n’est pas une instance du type .NET spécifié.
PowerShell Where-Object Cmdlet:
Filtrer la sortie en fonction de la condition dans PowerShell :
1
2
3
4
5
6
7
. 8
9
10
11
12
|
########################################
## PowerShell | Cmdlet | Where-Object ##
########################################
## PowerShell Dernière Version (5)
## Filtrer la sortie en fonction de la condition dans PowerShell
Get-Service | Where-Object Status -eq Stopped
Get-Service | Where-Object -Property Status -EQ -Value Stopped
Get-Service | Where-Object { $_.Status -eq « Stopped » }
|
Filtrer la sortie en fonction de plusieurs conditions dans PowerShell :
1
2
3
|
##Filtrer la sortie en fonction de plusieurs conditions dans PowerShell
Get-Service | Where-Object { $_.Status -eq « Stopped » -and $_.DisplayName -match « Windows* » }
|
J’espère que vous avez apprécié cet article. Dans le prochain billet de blog, nous aborderons la cmdlet ForEach-Object dans PowerShell.
Pour obtenir plus de détails sur PowerShell, veuillez suivre la documentation officielle ci-dessous
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about?view=powershell-5.1
.