假设我有PSCustomObject
这样名为$Stuff
:
$Stuff = ("Green", "Aubergine"),("Yellow", "Banana") |
% {[PSCustomObject]@{'Colors'=$_[0];'Items'=$_[1]}}
$Stuff | Format-Table
Colors: Items:
Green Courgette
Yellow Banana
要检索所有颜色,通常会使用$Stuff.Colors
或$Stuff | Select-Object -Property Colors
。
因为标签Colors
经常在我的脚本中发生变化,所以只要根据它的位置选择属性名称就更好了。因为我知道它永远是第一个属性,像$Stuff.[Property0]
这样的东西会很好。这可能吗?
感谢您的帮助。
答案 0 :(得分:1)
一种方法是:
$stuff | select -Property ($stuff | gm | ? { $_.membertype -eq 'noteproperty' })[0].name
或
$stuff | select -Property ($stuff[0].psobject.properties | select -expa name)[0]
答案 1 :(得分:0)
您可以这样选择PSCustomObject的第一个属性
$CustomObject1 = New-Object pscustomobject -Property @{a=1; b=2; c=3; d=4}
$CustomObject1.psobject.properties | select-object -Property Name -first 1