我想从[string []] $ Servers中删除“localhost”

时间:2012-04-08 14:53:11

标签: arrays string powershell

我想从字符串中删除localhost,但以下命令不起作用。任何想法为什么不呢?

选项1:

[string[]]$Servers = '"localhost","tbhserver"'
$Servers = $servers | Where-Object {$_ -ne "localhost"}

选项2:

[string[]]$Servers = '"localhost","tbhserver"'
$Servers 
[System.Collections.ArrayList]$servers = $servers
$servers.Remove("localhost")

2 个答案:

答案 0 :(得分:2)

在我看来,你只是将一个字符串“localhost”,“tbhserver”分配给$ Servers,而不是两个列表。

这有用吗?

$Servers = @("localhost", "tbhserver")
$Servers = $Servers | Where-Object {$_ -ne "localhost"}

我现在不在Windows机器上,所以我无法测试它。

答案 1 :(得分:1)

您还可以使用-ne参数:

$servers = 'localhost', 'tbhserver'
$servers = $servers -ne 'localhost'