J'ai vu beaucoup de fois cela en PowerShell, mais qu'est-ce que cela fait exactement?
$_
J'ai vu beaucoup de fois cela en PowerShell, mais qu'est-ce que cela fait exactement?
$_
Le $_ est un $PSItem, qui est essentiellement un objet envoyé depuis une autre commande. Par exemple, en exécutant Get-Volume sur mes postes de travail, renvoie des lignes de PSItems, ou objets
get-volume | select driveLetter,DriveType
driveLetter DriveType
----------- ---------
D Fixed
Fixed
C Fixed
A Removable
Driveletter et DriveType sont des propriétés Maintenant, vous pouvez utiliser ces propriétés d'éléments lors du transfert de la sortie avec $_.(propertyName). (Rappelez-vous également que % est un alias pour Foreach-Object) Par exemple
$vol = get-volume | select driveLetter,DriveType
$vol | Foreach-Object {
if($_.DriveType -eq "Fixed") {
"$($_.driveLetter) est $($_.driveType)"}
else{
"$($_.driveLetter) est $($_.driveType)"
}
}
En utilisant la Terinary en Powershell 7, je suis capable de raccourcir la logique tout en utilisant les propriétés du PSItem pipé
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.