PowerShell: use Select-Object para obtener solo el valor de la propiedad
A menudo, es posible que desee utilizar el cmdlet Select-Object en PowerShell para seleccionar solo el valor de una propiedad sin el nombre de la propiedad.
Puede utilizar la declaración -ExpandProperty para hacerlo:
Get-ChildItem $my_folder | Select-Object -ExpandProperty Name
Este ejemplo en particular hace lo siguiente:
- Primero, utilice el cmdlet Get-ChildItem para obtener todos los archivos y carpetas del directorio especificado por $my_folder.
- Luego, use el cmdlet Select-Object con -ExpandProperty para obtener solo los valores de la columna Nombre de la salida.
También puedes usar -Expand para acortar la sintaxis:
Get-ChildItem $my_folder | Select-Object -Expand NameEl siguiente ejemplo muestra cómo utilizar esta sintaxis en la práctica.
Ejemplo: utilizar Select-Object para obtener únicamente el valor de la propiedad en PowerShell
Supongamos que tenemos un directorio ubicado en la siguiente ruta:
c:\users\bobbi\data1Podemos usar el cmdlet Get-ChildItem para ver todos los archivos y carpetas en este directorio:
$my_folder = 'c:\users\bobbi\data1'
Get-ChildItem $my_folderLa siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:
Observe que esto devuelve un objeto con cuatro propiedades: Modo, LastWriteTime, Longitud y Nombre.
Supongamos que nos gustaría utilizar el cmdlet Select-Object para seleccionar solo la columna Nombre:
Get-ChildItem $my_folder | Select-Object NameLa siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:
Tenga en cuenta que esto devuelve tanto el nombre de la propiedad como los valores de la propiedad.
Si en lugar de eso queremos devolver solo los valores de la propiedad, entonces podemos usar la declaración -ExpandProperty:
Get-ChildItem $my_folder | Select-Object -ExpandProperty Name
La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:
Tenga en cuenta que esto devuelve sólo los valores de la columna Nombre.
También tenga en cuenta que podríamos acortar ligeramente el código simplemente usando la instrucción -Expand :
Get-ChildItem $my_folder | Select-Object -Expand NameLa siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:
Una vez más, esto devuelve sólo los valores de la columna Nombre.



