PowerShell - Présentation de la syntaxe basique de Where-Object et de ses limites
2 min de lecture · Mis à jour le 26 août 2024
La syntaxe basique/simplifiée apparue avec Windows PowerShell 3 est plus simple à appréhender mais plus limitée que la syntaxe standard/avancée.
Dans mes tests, elle est aussi légèrement plus rapide en PowerShell 7 (7.4.4) et moins en Windows PowerShell 5.1.
# Syntaxe standard/avancéeGet-Service | Where-Object -FilterScript { $_.Status -eq 'running' }
# Syntaxe basique/simplifiéeGet-Service | Where-Object -Property Status -eq 'running'
# Mais on les voit le plus souvent cette forme (sans l'argument après Where-Object)Get-Service | Where-Object { $_.Status -eq 'running' }Get-Service | Where-Object Status -eq 'running'Mais la syntaxe basique possède quelques limitations.
La syntaxe de base ne peut être utilisée que pour une seule comparaison.
# Cette syntaxe ne fonctionne pasGet-Service | Where-Object -Property Status -eq 'running' -and StartType -eq 'Automatic'
# Il est nécessaire d'utiliser la syntaxe standardGet-Service | Where-Object -FilterScript {$_.Status -eq 'running' -and $_.StartType -eq 'Automatic'}On ne peut pas utiliser une propriété de propriété avec la syntaxe de base.
# Cette syntaxe ne fonctionne pasGet-Process | Where-Object -Property Name.Length -lt 5
# Il est nécessaire d'utiliser la syntaxe standardGet-Process| Where-Object -FilterScript { $_.Name.Length -lt 5 }Liens en relation
- PowerShell
PowerShell - Envoyer simplement des objets dans des variables différentes
PowerShell - Astuce - Envoyer simplement des objets dans des variables différentes
1 min de lecture
- PowerShell
PowerShell - Tester la connectivité réseau et l'accessibilité aux ports
Tester la connectivité réseau et l'accessibilité aux ports avec PowerShell
2 min de lecture
- PowerShell
PowerShell - Afficher les connexions réseau (équivalent de netstat)
Afficher les connexions réseau (ports en écoute, connexions actives...)
2 min de lecture
- PowerShell
PowerShell - Tester la résolution de nom (équivalent de nslookup)
Commandes PowerShell permettant de tester la résolution de nom (équivalent de nslookup)
3 min de lecture
- PowerShell
PowerShell - Afficher et gérer la configuration DNS des interfaces réseau
Commandes PowerShell permettant d'afficher et de gérer la configuration DNS des interfaces réseau
4 min de lecture
- PowerShell
PowerShell - Gérer la configuration IP des interfaces réseau
Commandes PowerShell permettant d'afficher et de modifier la configuration IP des interfaces réseau
4 min de lecture


