数据结构问题PowerShell

时间:2014-12-09 00:18:07

标签: powershell

我的最终目标是能够输入多个字符串,然后在其他命令中引用它们,在这种情况下,映射网络驱动器。

我遇到了几个'的问题。部分原因。我可以一次使用一个,但是当我尝试做更多时,它失败了。

$Servers = @{"Server1" = "10.10.10.10";"Server2" = "10.10.10.11"}
$Sites = Read-Host "enter site codes"
$Sites.Split('.')
ForEach ($Site In Sites){
write-host $Servers[$Sites]
}

理论上这应该在两行上输出10.10.10.10和10.10.10.11,但它没有。它只输出$ Sites,Server1,Server2

的值

我不知道自己做错了什么。

1 个答案:

答案 0 :(得分:1)

我相信你的错误是使用$ Sites(而不是$ Site)作为foreach循环中的键,而不是将你的split数组放入foreach集合中:

$Servers = @{"Server1" = "10.10.10.10";"Server2" = "10.10.10.11"}
$Sites = Read-Host "enter site codes"
ForEach ($Site In $Sites.Split(',')){
write-host $Servers[$Site]
}