2011-10-11 7 views
5

オブジェクトにName NotePropertyを追加するにはどうすればよいですか?私は試しました:Name NotePropertyをオブジェクトに追加する方法は?

$a = "This", "Is", "a", "cat" 
$a | Add-Member -type NoteProperty -name Name 
$a 

しかし、これは動作していないようです。

予想される出力は次のとおりです。ここで

Name 
---- 
This 
Is 
a 
cat 
+0

この記事を読むhttp://technet.microsoft.com/en-us/library/ff730946.aspx –

+0

達成したいことはありますか?期待される成果は? – manojlds

+0

質問を編集しました。 – jrara

答えて

5

これは改正の質問への答えです:

$a = "This", "Is", "a", "cat" 
$a | Select-Object @{Name='Name'; Expression={$_}} 

出力、要求通り、

Name 
---- 
This 
Is 
a 
cat 
4

は、$ aにあなたの例の各値を取る名前と値のプロパティでPSObjectに変換するだけでなく、アドインを使用する方法の例です。 Memberコマンドレット`は行継続のためのものです。 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 
関連する問題