如何为对象添加Name NoteProperty?我试过了:
$a = "This", "Is", "a", "cat"
$a | Add-Member -type NoteProperty -name Name
$a
但这似乎不起作用。
预期输出为:
Name
----
This
Is
a
cat
答案 0 :(得分:5)
这是修正问题的答案:
$a = "This", "Is", "a", "cat"
$a | Select-Object @{Name='Name'; Expression={$_}}
根据要求输出
Name
----
This
Is
a
cat
答案 1 :(得分:4)
下面是一个示例,说明如何在$ a中将每个值作为示例,将其转换为具有Name和Value属性的PSObject以及使用Add-Member cmdlet。 `是为了延续线。因为在管道中调用Add-Member,所以-passThru属性用于传递具有新成员的对象。
$a | %{ new-object psobject -property @{Name="String"; Value=$_}} `
| %{ Add-Member -inputObject $_ -passThru -type NoteProperty -name Note -Value Value}
我将输出传输到| ft -auto缩小列以适应这里。
Value Name Note
----- ---- ----
This String Value
Is String Value
a String Value
cat String Value
回答更新问题的另一种方法:
$a | %{new-object psobject -p @{Name=$_}
预期输出匹配:
Name
----
This
Is
a
cat