Articles

¿Cómo dar salida a un archivo en Powershell con Out-File y Export-Csv Cmdlet?

Out-File es un cmdlet proporcionado por las bibliotecas del núcleo de Powershell. Este cmdlet proporciona características para escribir la salida creada en un archivo en el sistema de archivos. En este tutorial, veremos diferentes formas de escribir la salida en un archivo con los cmdlets Out-File y Export-CSV.

Uno de los escenarios básicos de uso de out-file es escribir la salida en un archivo sin modificarla. En este ejemplo escribiremos la salida del comando Get-Process en un archivo llamado process.txt mediante la canalización. El nombre del archivo se puede especificar como ruta completa como C:\user\process.txt

PS> Get-Process | Out-File process.txt
Escribir en un archivo
Escribir en un archivo

Añadir en un archivo existente

Si sólo queremos añadir nuevas líneas y no queremos eliminar los datos existentes debemos añadir nuevos datos con la opción -Append como la siguiente.

PS> Get-Process | Out-File -Append process.txt

Escribir como CSV

Podemos escribir la salida creada en un archivo es formato CSV. El formato CSV delimita las columnas con coma. Utilizaremos el cmdlet Export-Csv para esta operación. Esto tomará más tiempo que la escritura cruda en el archivo porque la fila será separada y cada columna será delimitada con el comando.

PS> Get-Process | Export-Csv test.txt
Escribir como CSV
Escribir como CSV

Escribir tanto en el archivo como en la consola

Otra de las características más usadas es que al escribir la salida en un archivo también se imprime en la consola. Esto proporcionará información verbosa sobre la salida. Utilizaremos Tee-Object que se hereda del sistema operativo Linux.

En este ejemplo obtenemos dir la salida del comando en la consola y el archivo llamado dirs.txt

PS> Dir | Tee-Object -f dirs.txt
Escribir tanto archivo como consola
Escribir tanto archivo como consola

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *