在 PowerShell 中获取键值对数组中的名字

在 PowerShell 中获取键值对数组中的名字

在尝试为我们的 Exchange 2013 部署编写一些维护脚本时,我需要的一个脚本是确定数据库当前在哪个服务器上处于活动状态,以及应该在哪个服务器上处于活动状态。

很简单,只是我遇到了一个我以前没见过的语法,不知道如何从中获取我需要的数据。当我运行命令时Get-MailboxDatabase Database1 | Select ActivationPreference,我得到的输出如下所示:

{[Server1, 1], [Server2, 2]}

现在我知道这是什么了方法(Server1 是托管此数据库活动副本的首选服务器),但对于我的脚本,我需要能够提取该数据 - 而我无法弄清楚。数组访问可以轻松让我获得第一对([Server1, 1]),即System.Collections.Generic.KeyValuePair,但我对 PowerShell 甚至对 .NET 都比较陌生,无法弄清楚这意味着什么或如何从中获取我需要的信息。

存在哪些命令/方法/运算符/等可以提取这样的键值对中的键?

答案1

好吧,事实证明这非常简单。不知道为什么我没有早点尝试,但我将其中一个 KeyValuePair 对象导入Format-List,并得到了以下输出:

Key   : Server1
Value : 1

因此,在我的脚本中查找该值就像寻址对象的 Key 参数一样简单。

相关内容