2017-08-17 5 views
4

Ich frage mich, ob es einen kürzeren Weg zum Erstellen eines multidimensionalen Hashtable-Array in Powershell gab. Ich konnte sie mit ein paar Zeilen erfolgreich erstellen.Erstellen Sie ein multidimensionales Hashtabellenarray in Powershell

$arr = @{} 
$arr["David"] = @{} 
$arr["David"]["TSHIRTS"] = @{} 
$arr["David"]["TSHIRTS"]["SIZE"] = "M" 

Das sagte ich frage mich, ob es irgendeine Art und Weise war dies so zu etwas zu verkürzen ...

$new_arr["Level1"]["Level2"]["Level3"] = "Test" 

Wo es eine neue Ebene schaffen würde, wenn es nicht bereits vorhanden ist. Vielen Dank!

+1

Sie sind nach [autovivification] (https://en.wikipedia.org/wiki/Autovivification) und nein, PowerShell hat es nicht. –

Antwort

8

Sie benennen müssen/definieren die Unterebene oder auch der Dolmetscher nicht weiß, welche Art von Typ, es funktioniert mit (array, einzelnen Knoten, Objekt, usw.)

$arr = @{ 
    David = @{ 
     TSHIRTS = @{ 
      SIZE = 'M' 
     } 
    } 
} 
Verwandte Themen