121 votes

GetType utilisé dans PowerShell, différence entre les variables

Quelle est la différence entre les variables $a et $b ?

 $a = (Get-Date).DayOfWeek
$b = Get-Date | Select-Object DayOfWeek

j'ai essayé de vérifier

 $a.GetType
$b.GetType

MemberType          : Method
OverloadDefinitions : {type GetType()}
TypeNameOfValue     : System.Management.Automation.PSMethod
Value               : type GetType()
Name                : GetType
IsInstance          : True

MemberType          : Method
OverloadDefinitions : {type GetType()}
TypeNameOfValue     : System.Management.Automation.PSMethod
Value               : type GetType()
Name                : GetType
IsInstance          : True

Mais il ne semble pas y avoir de différence bien que la sortie de ces variables semble différente.

30voto

Shay Levy Points 41404

Select-Object crée un nouveau psobject et copie les propriétés que vous lui avez demandées. Vous pouvez le vérifier avec GetType() :

 PS > $a.GetType().fullname
System.DayOfWeek

PS > $b.GetType().fullname
System.Management.Automation.PSCustomObject

Prograide.com

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.

Powered by:

X