0

我需要通过 PowerShell 查找给定 IP 的 DNS 注册主机名。有人可以告诉我如何将计算机名称(以下示例中的“mysystem”)单独存储到下面输出的变量中。

$Hostname = [System.Net.Dns]::GetHostEntry($ipAddress)

HostName                 Aliases         AddressList                                                 
--------                 -------         -----------                                                 
mysystem.mycountry.company.com         {}              {fe80::50d6:7029:f655:f955%11, 
4

2 回答 2

1

只取HostName属性并将其拆分为点:

$Hostname = ([Net.Dns]::GetHostEntry($ipAddress).HostName -split '\.')[0]
于 2013-09-22T15:26:06.233 回答
1

简单的。在 PowerShell 中,返回结果始终是对象。返回结果中的列标题(或标签,返回结果为列表格式)是返回对象的属性。因此,不要将整个对象分配给$Hostname,只需分配对象的HostName属性:

$Hostname = ([System.Net.Dns]::GetHostEntry($ipAddress)).HostName
于 2013-09-22T15:21:54.660 回答