从get-log命令返回的对象可能看起来像
Date: <date> Properties: statusCode : OK serviceRequestId: 97168d7a-4c92-4d65-b509-65785b14ef42 Name: <name> Details: <details>
我想通过执行类似
的操作来返回一个对象get-log | where-object { $_.Properties.serviceRequestId -eq '97168d7a-4c92-4d65-b509-65785b14ef42' }
当然,这不起作用,但我想要一些像这样的东西。
我的目标是看到&#34;详情&#34;属性。
答案 0 :(得分:1)
您提供的过滤示例按原样运行:
get-log | where-object { $_.Properties.serviceRequestId -eq '97168d7a-4c92-4d65-b509-65785b14ef42' }
这将返回您想要的对象(完整对象,而不仅仅是内部属性)。
因此,您可以使用其结果来获取任何其他属性,例如Details
:
$result = get-log | where-object { $_.Properties.serviceRequestId -eq '97168d7a-4c92-4d65-b509-65785b14ef42' }
$result.Details
或者您可以通过继续管道并使用Select-Object
:
get-log |
where-object {
$_.Properties.serviceRequestId -eq '97168d7a-4c92-4d65-b509-65785b14ef42'
} |
Select-Object -ExpandProperty Details
(为了更好的可读性,在多行上做了)