Bonjour à tous,

Comment retrouver le type d'une variable quand powershell vous la cast en System.Management.Automation.PSVariable

Assez naturellement, je suis partit sur le code suivant pour tester ma question.
Je crée 6 variables et je demande de ne me ressortir que celles qui sont de type DateTime:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
[String]$var1 = "tuut"
[String]$var2 = "tuut2"
[Int32]$var3 = 10
[Int32]$var4 = 100
[DateTime]$var5 = Get-Date
[DateTime]$var6 = $var5.Addhours(24)

Get-Variable -name va* | Where-Object {$_ -is [DateTime]}
Avec ce code, je n'obtiens rien en sortie.

j'ai donc demandé à la commande suivante de me ressortir le type d'objet passé en paramètre à Where-Object. J'obtiens des objets de type PSVariable, et je n'ai donc plus de référence aux types d'origines (string, date, int).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
[PS] S:\>Get-ChildItem variable: | where{$_.name -like 'var*'} | foreach {$_.getType()}

IsPublic IsSerial Name                                     BaseType
-------- -------- ----                                     --------
True     False    PSVariable                               System.Object
True     False    PSVariable                               System.Object
True     False    PSVariable                               System.Object
True     False    PSVariable                               System.Object
True     False    PSVariable                               System.Object
True     False    PSVariable                               System.Object
Comment fait on pour filtrer les variables en fonction de leur type?

Merci,