【问题标题】:PowerCLI Get-VM filter out blank IP AddressPowerCLI Get-VM 过滤掉空白 IP 地址
【发布时间】:2015-05-29 19:44:09
【问题描述】:

我需要过滤掉下面 PowerCLI 脚本的“IP 地址”列中的空白,但我很难弄清楚。

这是核心脚本。

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 "" }

任何帮助将不胜感激。

谢谢,

-罗伯

【问题讨论】:

    标签: powershell powercli


    【解决方案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 属性。其次检查该属性的源数据。无论哪种方式,他们应该评估相同。

    【讨论】:

    • 谢谢!那是一种享受。我知道这可能很简单。我也可以将您的答案用于我正在处理的其他问题。再次感谢! -罗伯
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-30
    • 2022-10-04
    • 2015-05-02
    • 2016-12-04
    • 2022-12-02
    • 1970-01-01
    相关资源
    最近更新 更多