【问题标题】:How to add a Name NoteProperty to an object?如何将名称 NoteProperty 添加到对象?
【发布时间】:2011-10-11 08:49:34
【问题描述】:
如何为对象添加 Name NoteProperty?我试过了:
$a = "This", "Is", "a", "cat"
$a | Add-Member -type NoteProperty -name Name
$a
但这似乎不起作用。
预期的输出是:
Name
----
This
Is
a
cat
【问题讨论】:
标签:
powershell
powershell-2.0
【解决方案1】:
这是修改后问题的答案:
$a = "This", "Is", "a", "cat"
$a | Select-Object @{Name='Name'; Expression={$_}}
按要求输出是
Name
----
This
Is
a
cat
【解决方案2】:
这是一个示例,说明如何将 $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