Powershell State Values

Aus MyWiki
Zur Navigation springen Zur Suche springen

Powershell hat bei einigen Befehlen "State" Werte die in der Powershell selbst als Text angezeigt, aber als Variable gespeichert wird es als Integer Wert gespeichert
Es handelt sich dabei um enum Werte. Um die Zuordnung zu ermitteln kann folgendes ausgeführt werden:

$variable.State.GetType().FullName gibt den vollen Typ zurück. z.B.: Microsoft.HyperV.PowerShell.VMState
nun kann damit die Enum-Tabelle abgefragt werden. [enum]::GetValues([Microsoft.HyperV.PowerShell.VMState])
um nun noch die ID gleichzeitig mit auszugeben, folgenden Befehl ausführen. foreach ($v in [enum]::GetValues([Microsoft.HyperV.PowerShell.VMState])) { write-host ([int]$v): $v }