访问脚本属性

时间:2018-01-20 16:02:04

标签: powershell select-object

我希望为本地服务器运行DNS查找,同时选择主机名和IP地址并输出到文本文件。

[System.Net.Dns]::GetHostEntry('server1') | 
    Select-Object 'HostName', 'IPAddressToString' |
    Out-File -Path 'c:\temp\DnsIpAddress.txt'

我可以访问HostName但无法选择IPAddressToString。我可以 如果我以这种方式将结果保存到变量,则访问IPAddressToString

$result.AddressList.IpAddressToString

我可以使用Select-Object选择hostnameIPAddressToString吗?或者我应该采取另一种方式吗?

2 个答案:

答案 0 :(得分:3)

将计算属性与Select-Object

一起使用
[System.Net.Dns]::GetHostentry('server1') |
  Select-Object HostName,@{Name = 'IPAddress';Expression={$_.AddressList.IPAddressToString}} |
  Out-File -Path 'C:\temp\DnsIpAddress.txt'

答案 1 :(得分:0)

值得一提的是,有一个cmdlet Resolve-DnsName可能会产生更多“PowerShelly”代码:

Resolve-DnsName -name www.stackoverflow.com | Select-Object Name,IPAddress