I am playing around with hashtables in powershell and try to figure out, if there is a way, to show the content of Key1 (not the value).
I tried several ways to have as an result "Monday" but either I get all the names of the table, a blank return or an error message.
here's my table:
$Weekdays = @{Monday = 'Montag';Tuesday = 'Dienstag'}
If possible, I would like to have as an output only "Monday", is there a way, I can enter code to have "Monday" as an output?
Thank you very much for your help,
Mike
You can access the Key/ValueCollection inside the hashtable:
$Weekdays = @{Monday = 'Montag';Tuesday = 'Dienstag'}
echo $($Weekdays.Keys)[0]
echo $($Weekdays.Values)[1]
will return
Monday
Dienstag
enclosing the call to "Keys" in $() will result in the Collection being converted to an Object Array, as you ca see here:
$Weekdays = @{Monday = 'Montag';Tuesday = 'Dienstag'}
$Weekdays.Keys.Gettype()
$($Weekdays.Keys).Gettype()
which gives
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
False True KeyCollection System.Object
True True Object[] System.Array
and an object array can be indexed into with integers.