【问题标题】:PowerShell conditional statements while building PSCustomObject构建 PSCustomObject 时的 PowerShell 条件语句
【发布时间】:2017-12-01 23:45:12
【问题描述】:

我想在创建 PSCustomObject 时检查变量是否存在。我有很多对象要查询并将数据收集到我的新对象中,所以我不想用“if”语句复制整个代码块,因为我试图简洁。

[array]$newObject += [PSCustomObject][ordered]@{
  JitterInterArrival = (if ($_.QoeReport.AudioStreams){$_.QoeReport.AudioStreams[0].JitterInterArrival}else{"N/A"}
}

我知道上面的代码块会产生一个“if”语句无法识别的错误。在定义 PSCustomObject 时还有其他方法可以包含代码块吗?

【问题讨论】:

    标签: powershell pscustomobject


    【解决方案1】:

    你很亲密!

    [array]$newObject += [PSCustomObject][ordered]@{
      JitterInterArrival = $(if ($_.QoeReport.AudioStreams){$_.QoeReport.AudioStreams[0].JitterInterArrival}else{"N/A"})
    }
    

    通过用$() 包围它,我们使它成为首先执行的子表达式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-06
      • 2019-01-14
      相关资源
      最近更新 更多