我有一个哈希数组,我希望将该数组格式化为一个表,枚举每个条目而不实际添加哈希项以包含此信息。 E.g。
$id = 0
$items = @( @{ item='a' }, @{ item='b' }, @{ item='c' })
$items |
%{ new-object PSObject -Property $_ } |
Format-Table @{ n=""; e={ "{0}" -f ++$id }; a="left" },item
我期待:
item
- ----
1 a
2 b
3 c
但得到:
item
- ----
1 a
1 b
1 c
答案 0 :(得分:3)
似乎$id
按值传递。需要使用[ref]
强制它作为参考,它会起作用。 E.g:
[ref]$id = 0
$items = @( @{ item='a' }, @{ item='b' }, @{ item='c' })
$items | %{ new-object PSObject -Property $_ } |
Format-Table @{ n=""; e={ "{0}" -f ++$id.value }; a="left" },item