我要返回很多想要过滤的数据.酒店的名称包含此信息.我习惯于基于过滤| ? {$_.Name -eq 'Value'}.我希望能够使用隐藏.pscustomobject更动态地执行此操作.
$x = [pscustomobject]@{
atruevalue = 'sometext'
afalsevalue = 'sometext'
}
$x | ?{$_.psobject.Properties.Name -like '*true*'}
Run Code Online (Sandbox Code Playgroud)
我希望这会回来:
> atruevalue
> ----------
> sometext
Run Code Online (Sandbox Code Playgroud)
但是,它只返回对象中的每个项目.
有谁能解释这种行为?
如果你真的想要过滤属性,那么移动一下就可以了.这看起来像:
$x.psobject.Properties | ? {$_.Name -like '*true*'}
Run Code Online (Sandbox Code Playgroud)
如果您只想要值而不是属性,那么将另一个阶段添加到管道:
$x.psobject.Properties | ? {$_.Name -like '*true*'} | % Value
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
226 次 |
| 最近记录: |