如果我在 Windows 7 机器上运行以下命令,则使用 PowerShell 2.0:
(Get-WmiObject Win32_NetworkAdapterConfiguration |
Where { $_.IPAddress }
它返回
192.168.83.26
fe80::<IPv6 address>
如果我运行:
(Get-WmiObject Win32_NetworkAdapterConfiguration |
Where { $_.IPAddress }.ToString()
它返回
System.Object[]
为什么?我该如何解决?
仅供参考,我实际上正在尝试使用.ToString().split('.')[0..2] -join '.'
,但我很确定这.ToString
是导致问题的原因
function Get-IPAddress{
(Get-WmiObject Win32_NetworkAdapterConfiguration |
Where { $_.IPAddress } |
Select -Expand IPAddress).split('.')[0..2] -join '.'
}
Get-IPAddress
在 PoSh 3 上返回192.168.10
。这似乎在 PoSh 2 上不起作用,并返回我上面所说的“System.Object []”。该错误抱怨没有名为 trim 的方法。其他人建议将其声明为字符串,但我无法使其工作