Redirigir la salida de Bash a un archivo

Naila Saad Siddiqui 15 febrero 2024
  1. Use los operadores > y >> para redirigir la salida a un archivo en Bash
  2. Use el comando tee para redirigir la salida a un archivo en Bash
Redirigir la salida de Bash a un archivo

Este pequeño artículo trata sobre los métodos de las secuencias de comandos de Bash para redirigir la salida de los comandos a un archivo en lugar de a la consola estándar.

Hay varias formas de lograr esta redirección. Aquí hablaremos de algunos de ellos.

Use los operadores > y >> para redirigir la salida a un archivo en Bash

Los dos operadores de redirección > y >> redirigen la salida de cualquier comando a un archivo específico en lugar de stdout o consola.

  1. Usando el operador >, la salida se inserta en un archivo reemplazando todo el contenido del archivo anterior.
  2. Usando el operador >>, la salida se agrega al final del archivo, manteniendo el contenido anterior tal como está.

Recuerde que no necesita crear el archivo explícitamente antes de usar este comando; debe especificar la ruta correcta y Bash creará un nuevo archivo si el archivo no existe.

La sintaxis de este comando es:

[command] > /path/to/your/file

Veamos el ejemplo a continuación.

salida de los operadores de redirección

Puede ver en la imagen de arriba que después de ejecutar el primer comando, no se mostró ninguna salida en la pantalla, pero toda la salida se coloca en el archivo y se ve en el siguiente comando.

Veremos el funcionamiento del operador >>.

Funcionamiento del operador »

Puede ver en la imagen que la salida del comando uname se agrega al final del archivo.

Use el comando tee para redirigir la salida a un archivo en Bash

El comando tee también se usa para redirigir la salida a un archivo. La diferencia es que no solo envía la salida al archivo sino que también la muestra en la pantalla.

Recuerde que no necesita crear el archivo explícitamente antes de usar este comando; debe especificar la ruta correcta y Bash creará un nuevo archivo si el archivo no existe.

La sintaxis de este comando es:

[command] | tee /path/to/your/file

Veamos el ejemplo a continuación.

comando tee

Este comando reemplaza todo el contenido del archivo con este nuevo contenido. Si desea mantener el contenido anterior y agregar el archivo, podemos usar este comando con una opción -a como se muestra a continuación.

comando tee -una opción

Por lo tanto, podemos ver que hay muchas formas de redirigir la salida a un archivo.

Hemos discutido algunos de ellos aquí. Hay varios otros también.

Artículo relacionado - Bash Output