从变量中删除特定字符串

时间:2018-02-12 14:11:32

标签: powershell

我有一个包含服务器名称和端口的文件

test1.abc.com[123],test2.abc.com[123],test3.abc.com[123],test4.abc.com[123]

我必须读取文件并仅使用服务器名称。我在下面尝试过,我可以单独获取端口的服务器名称,但只需要服务器名称,例如test1.abc.com等,

我试过的代码:

$servers = Get-Content C:\Test\Servers.txt

foreach ($ServerName in $servers)
{
$ServerName = $ServerName -split(',')
}

有了这个,我得到了带端口的个人服务器名称。如何从中取出服务器名称?任何帮助。

1 个答案:

答案 0 :(得分:1)

您可以使用简单的正则表达式使用-replace函数删除端口:

$servers = Get-Content D:\tmp.txt

foreach ($ServerName in $servers)
{
    $ServerName = $ServerName -split(',') -replace '\[\d+\]'
}