Le filtre Keyword dans PowerShell
Une fonction est une collection d’instructions PowerShell qui a un nom attribué. Pour exécuter la fonction, vous devez taper le nom de la fonction.
Les instructions dans une fonction s’exécutent après que vous avez exécuté la fonction. Une fonction doit être définie avant de pouvoir être appelée.
Un filtre est un type spécial de fonction qui utilise le mot-clé filter. Ce tutoriel vous apprendra à utiliser la fonction de filtre dans PowerShell.
Utiliser la fonction filter dans PowerShell
Le filter est une fonction qui s’exécute sur chaque objet dans le pipeline. Toutes ses instructions sont incluses dans un bloc de processus dans la fonction filter.
Normalement, une fonction utilise le paramètre Begin ou End, mais une fonction filter n’a que le bloc de processus.
Syntaxe :
filter [<scope:>]<name> { <statement list> }
Le but principal d’une fonction filter est de traiter les entrées du pipeline. Elle aide à traiter les entrées du pipeline plus rapidement et plus efficacement.
L’exemple suivant prend 1,2,3 comme entrée du pipeline et affiche toute l’entrée.
Commande :
filter Input {
$_
}
1, 2, 3, 4, 5 | Input
La variable automatique $_ aide à capturer l’objet d’entrée du pipeline.
Sortie :
1
2
3
4
5
Il n’est pas nécessaire d’utiliser la boucle ForEach dans la fonction de filtre car la fonctionnalité de boucle est déjà intégrée.
Commande :
filter Input {
if ($_ -eq 2) {
$_
}
}
1, 2, 3, 4, 5 | Input
Sortie :
2
La fonction filter suivante obtient des objets de fichiers du pipeline puis les affiche dans la sortie.
Commande :
filter Get-Files {
$_
}
Get-ChildItem C:\folder2 -Recurse -ErrorAction SilentlyContinue | Get-Files
Dans le script ci-dessus, la cmdlet Get-Child obtient de manière récursive les éléments dans le répertoire C:\folder2.
Sortie :
Directory: C:\folder2
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2/23/2022 11:39 PM New folder
-a---- 2/23/2022 10:29 PM 0 books.txt
-a---- 2/23/2022 10:29 PM 0 hello.txt
Directory: C:\folder2\New folder
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2/23/2022 10:26 PM 0 cars.txt
Nous espérons que cet article vous aide à comprendre comment utiliser la fonction de filtre dans PowerShell. Pour plus d’informations, lisez Travailler avec des Fonctions dans Windows PowerShell.
