HOWTO · PowerShell
Importar archivo de texto y formatear y exportarlo a CSV en PowerShell
Este artículo describe cómo podemos importar un archivo de texto y formatearlo y exportarlo a un archivo CSV con PowerShell. Los comandos de PowerShell como Get-Content, ConvertFrom-StringData y Export-Csv son útiles cuando desea importar archivos y exportarlos como archivos CSV.
En esta página
Este artículo describe cómo podemos importar un archivo de texto y formatearlo y exportarlo a un archivo CSV con PowerShell.
Los comandos de PowerShell como Get-Content, ConvertFrom-StringData y Export-Csv son útiles cuando desea importar archivos y exportarlos como archivos CSV. Si no está seguro de cómo se hace esto, quédese, tenemos mucho que desempacar.
Importar archivo de texto y formatear y exportarlo a CSV en PowerShell
Para facilitar el contexto, usaremos un ejemplo.
Supongamos que la imagen a continuación representa el contenido del archivo de texto que deseamos importar, formatear y exportar a un archivo CSV. ¿Cómo lo haríamos?
El primer paso es analizar los datos en un objeto personalizado, lo que facilita su procesamiento. A continuación se muestra el script que utilizaremos:
$usrObj = [pscustomobject] ((Get-Content -Raw C:\Users\pc\Demo\Users.txt) -replace ':', '=' |
ConvertFrom-StringData)
Usamos -replace ':', '=' para cambiar : a = ya que ConvertFrom-StringData solo acepta = como separador entre una clave y su valor correspondiente.
Además, usamos [pscustomobject] para convertir la tabla hash generada por ConvertFrom-StringData en un objeto personalizado.
Podemos formatear esto en una tabla en el orden que deseemos con el siguiente script:
$usrObj | Format-Table 'Username', 'Title', 'Department', 'Manager', 'Similar User'
Esto producirá el siguiente resultado:
Luego podemos guardar la información en un archivo CSV llamado Users.csv. A continuación se muestra el script que utilizaremos:
$usrObj | Export-Csv -NoTypeInformation -Encoding Utf8 Users.csv
Nuestro archivo CSV debería verse así:
En conclusión, puede importar y exportar un archivo de texto como un archivo CSV en PowerShell. Comandos como Get-Content, ConvertFrom-StringData y Export-Csv son útiles en tales escenarios.