提取指定字符前的字符串

提取指定字符前的字符串

检索计算机名称时,我有多个返回类型值。例如,machine1 和 machine1.contoso.local。

我将 $1 设置为这样的计算机列表,$1 = get-computernamelist但我需要它与 cmdlet 中的属性名称下的机器名称部分一致。

如何从 machine1.contoso.local 中提取第一个句号之前的字符串?如果我可以$1 = get-computernamelist在第一个句号之前设置(如果存在),那么就可以很好地完成工作。

答案1

要在 Powershell 中从 FQDN 解析主机名,您可以 SubString结合使用IndexOf

$hoststring = "machine1.contoso.com"
$hostname = $hoststring.SubString(0, $hoststring.IndexOf("."))

由于不知道输出的具体样子get-computernamelist,因此很难给您更详细的答案。根据列表的类型,解析整个列表的方法会有所不同,但每种方法都会包括像上面这样的解析。

相关内容