我正在寻找一种数据结构/cmdlet,它允许我向 Powershell 中的单个键添加多个值。
理想情况下,我的数据应如下所示:
关键--------------------------值
主机名1--------------数据库1、数据库2、数据库3
主机名2--------------数据库1,数据库2
等等...
我认为哈希表可以解决问题,但我无法执行以下操作:
$servObjects = @{}
$servObjects.Add("server1", @())
$servObjects.get_item("server1") += "database1"
当我尝试时,这会产生一个空数组:
$servObjects.get_item("server1")
我还尝试执行以下操作,希望 powershell 能够理解我想要的内容:
$servObjects2 = @{}
$servObjects2.add($servername, $databasename)
不幸的是,这会产生重复的键异常
感谢您的所有意见
最佳答案
您基本上需要一个包含数组值的哈希表。您不必使用 $hashtable.get_item
或 .add
$myHashTable = @{} # creates hash table
$myHashTable.Entry1 = @() #adds an array
$myHashTable.Entry1 += "element1"
$myHashTable.Entry1 += "element2"
这会产生以下输出:
$myHashTable
Name Value
---- -----
Entry1 {element1, element2}
$myHashTable.Entry1
element1
element2
关于具有多个值和一个键的 Powershell 哈希表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46412764/