PowerCLI Get-VM过滤掉空白IP地址

时间:2015-05-29 19:44:10

标签: powershell powercli

我需要过滤掉" IP地址"中的空白。以下PowerCLI脚本的列,但我很难搞清楚。

这是核心脚本。

Get-VM | select Name, @{N="IP Address";E={@($_.guest.IPAddress[3])}}, Guest, PowerState

这是我尝试过的失败的脚本之一。

Get-VM | select Name, @{N="IP Address";E={@($_.guest.IPAddress[3])}}, Guest, PowerState | where-object { @{N="IP Address";E={@($_.guest.IPAddress[3])}} -ne "" }

任何帮助都将不胜感激。

谢谢,

-Rob

1 个答案:

答案 0 :(得分:1)

您已经建立了客户财产。您现在可以直接使用它进行过滤

Get-VM | select Name, @{N="IP Address";E={@($_.guest.IPAddress[3])}}, Guest, PowerState | where-object{$_."IP Address"}

Get-VM | Where-Object{$_.guest.IPAddress[3]} | select Name, @{N="IP Address";E={@($_.guest.IPAddress[3])}}, Guest, PowerState

如果属性为null或为空,则将评估为false。在您的示例中,您正在评估哈希表的创建。第一个示例检查新创建的IP Address属性。其次,检查该属性的源数据。他们应该评估相同的方式。