Cómo crear tablas en PowerShell
- Usar tabla hash para crear tablas en PowerShell
-
Usar el objeto
DataTable
para crear tablas en PowerShell -
Usar
Format-Table
para crear tablas en PowerShell - Conclusión

Organizar y mostrar datos de manera clara y estructurada es esencial, y las tablas son un formato ampliamente reconocido para lograr esto. En PowerShell, como en cualquier lenguaje de programación, la capacidad de crear tablas es fundamental.
Crear tablas personalizadas es un proceso sencillo en PowerShell. Este artículo explora los diferentes métodos disponibles para crear tablas en PowerShell, haciendo que la presentación de datos sea más efectiva.
Usar tabla hash para crear tablas en PowerShell
Una tabla hash es una estructura de datos compacta que almacena cada valor usando una clave. También se conoce como diccionario o arreglo asociativo.
En PowerShell, puedes crear una tabla hash utilizando la sintaxis @{}
. Las claves y los valores están encerrados entre llaves {}
.
Código:
$hash = @{Name = "brian"; Age = "23"; Location = "UK" }
En el código anterior, se crea una tabla hash utilizando el símbolo @
seguido de llaves { }
. Dentro de las llaves, tenemos tres pares de clave-valor separados por punto y coma.
Cada clave es una cadena (Name
, Age
, Location
) seguida de un signo igual (=
) y los correspondientes valores.
Así que, esta línea crea una tabla hash con los siguientes pares de clave-valor:
- Clave
Name
con el valor"brian"
. - Clave
Age
con el valor"23"
. - Clave
Location
con el valor"UK"
.
Muestra el contenido de la tabla hash utilizando la variable $hash
.
$hash
Salida:
Name Value
---- -----
Name brian
Age 23
Location UK
Una tabla hash se muestra en formato tabular, teniendo una columna para las claves y otra para los valores.
Sin embargo, vale la pena señalar que las tablas hash están limitadas a mostrar solo dos columnas: una para las claves y una para los valores. Si tus requerimientos involucran más columnas o columnas con nombres diferentes, las tablas hash pueden no ser la opción más efectiva.
Usar el objeto DataTable
para crear tablas en PowerShell
El objeto DataTable
es muy útil al trabajar con tablas en PowerShell. Puedes crear un DataTable
utilizando el comando New-Object System.Data.Datatable
.
Puedes usar $TableName.Columns.Add("ColumnNames")
para agregar columnas y $TableName.Rows.Add("ValueToColumns")
para agregar filas en la tabla.
En el siguiente ejemplo, creamos un nuevo objeto DataTable
($table
) de la clase System.Data.DataTable
.
Luego, agregamos tres columnas y tres filas al objeto DataTable
($table
). El [void]
se utiliza para suprimir la salida de estos comandos.
Por último, mostramos el contenido del objeto DataTable
utilizando la variable $table
.
Código:
$table = New-Object System.Data.DataTable
[void]$table.Columns.Add("Name")
[void]$table.Columns.Add("Age")
[void]$table.Columns.Add("Location")
[void]$table.Rows.Add("brian", "23", "UK")
[void]$table.Rows.Add("sam", "32", "Canada")
[void]$table.Rows.Add("eric", "25", "USA")
$table
Salida:
Name Age Location
---- --- --------
brian 23 UK
sam 32 Canada
eric 25 USA
En la salida, verás la tabla generada utilizando el objeto DataTable
. Aunque este método te permite crear tablas con múltiples columnas y nombres de columnas personalizados, debes agregar manualmente tanto las columnas como sus respectivos valores.
Usar Format-Table
para crear tablas en PowerShell
Puedes usar el cmdlet Format-Table
para formatear y mostrar datos como una tabla en la consola. Si bien no crea un objeto tabla, es útil para presentar datos en formato tabular en la consola.
Código:
Get-Process | Format-Table -Property Name, Id, CPU
En el ejemplo anterior, usamos Get-Process
para recuperar información sobre los procesos en ejecución. La salida de Get-Process
es una lista de procesos en ejecución.
Luego, pasamos la salida de Get-Process
al cmdlet Format-Table
para su formateo. Queremos mostrar las propiedades específicas de cada proceso en un formato de tabla.
A continuación, usamos el parámetro -Property
para especificar las propiedades que incluir en la tabla. En este caso, queremos incluir las propiedades Name
, Id
y CPU
.
Salida:
Name Id CPU
---- -- ---
ACCStd 4084 11.15625
ACCSvc 2620
amdfendrsr 2596
AMDRSServ 10772 47.6875
La salida muestra información sobre los procesos en ejecución. Cada fila representa un proceso diferente.
Tenga en cuenta que no todos los procesos tienen un valor en la columna CPU
. Algunos procesos pueden no consumir recursos de CPU, por lo que su columna CPU
permanece vacía en la salida.
Conclusión
Crear tablas en PowerShell es fácil y versátil, atendiendo a diversas necesidades de presentación de datos. Tienes opciones como tablas hash para pares clave-valor básicos, el objeto DataTable
para tablas más avanzadas con múltiples columnas y nombres personalizados, y el cmdlet Format-Table
para mostrar datos de manera ordenada en la consola.
Estos métodos te permiten mejorar la legibilidad y organización de tus datos, haciendo que tus scripts de PowerShell sean más efectivos y fáciles de usar.