Comment retrouver le type d'une variable avec Where-Object
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:
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:
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,