如何统计PowerShell对象数组中含error键的条目数量
PowerShell统计日志条目中无error键的数量
你可以通过以下两种方式实现需求:
方法一:直接统计无error键的条目数
通过Where-Object筛选出不包含error属性的日志条目,直接获取其数量:
$successCount = ($aLog | Where-Object { -not $_.PSObject.Properties.Name.Contains('error') }).Count "Success: $successCount of $($aLog.Count)"
方法二:先统计含error键的条目数再计算
先筛选出包含error属性的条目并统计数量,再用总条目数减去该值得到结果:
$errorCount = ($aLog | Where-Object { $_.PSObject.Properties.Name.Contains('error') }).Count $successCount = $aLog.Count - $errorCount "Success: $successCount of $($aLog.Count)"
说明
$_.PSObject.Properties会返回当前对象的所有属性集合,通过Contains('error')可以准确判断该对象是否存在error属性,避免因属性值为$null导致的误判。
内容的提问来源于stack exchange,提问作者Tony
相关产品推荐
相关产品推荐

