具有多个值和一个键的 Powershell 哈希表

标签 powershell data-structures

我正在寻找一种数据结构/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/

相关文章:

powershell - 在powershell中将字符串转换为数字

powershell - 多个 Get-WmiObject 调用的单一连接

validation - 在创建 OU 之前检查它是否存在

algorithm - 最优二叉搜索树仅针对特定顺序的键和频率对是最优的?

c++ - 如何改进此算法以防止 TLE 是 SPOJ 提交?

java - POP方法链表

windows - 如何获取 win32_service 恢复选项卡属性

Powershell:并行运行函数

algorithm - 在 N-1 比较中,如何在最初为空的二项式队列中插入 N 个元素?

java - 如何以类型安全的方式在查询中存储数据?