2011-10-11 13 views
5

¿Cómo se puede agregar el nombre NoteProperty para un objeto? Intenté:¿Cómo agregar un nombre NoteProperty a un objeto?

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

pero esto no parece funcionar.

El resultado esperado es:

Name 
---- 
This 
Is 
a 
cat 
+0

lea esto http://technet.microsoft.com/es-es/library/ff730946.aspx –

+0

¿Qué desea lograr? ¿Cuál es tu salida esperada? – manojlds

+0

Edité la pregunta. – jrara

Respuesta

5

Esta es la respuesta a la pregunta modificada:

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

de salida, según lo solicitado, es

Name 
---- 
This 
Is 
a 
cat 
4

Aquí es un ejemplo de cómo tomar su ejemplo cada valor de $ a, convertirlo en un PSObject con un nombre y propiedades de valor, así como el uso de la Más- Cmdlet de miembro El `es para continuación de línea. Como Add-Member se está llamando en una canalización, la propiedad -passThru se utilizó para pasar el objeto con el nuevo miembro.

$a | %{ new-object psobject -property @{Name="String"; Value=$_}} ` 
    | %{ Add-Member -inputObject $_ -passThru -type NoteProperty -name Note -Value Value} 

Apagué la salida | ft -auto para reducir las columnas para que quepan aquí muy bien.

Value Name Note 
----- ---- ---- 
This String Value 
Is String Value 
a  String Value 
cat String Value 

Otra manera de responder a la pregunta actualización: $a | %{new-object psobject -p @{Name=$_} partidos de salida esperados:

Name 
---- 
This 
Is 
a 
cat 
Cuestiones relacionadas