Redirecciones (>, >>, <, |, tee)

...

Introducción

En esta unidad veremos cómo funcionan las redirecciones en consola.

En Linux, las redirecciones y tuberías permiten controlar el flujo de entrada y salida de los comandos. Gracias a ellas, podemos guardar resultados en archivos, usar archivos como entrada o encadenar varios comandos entre sí.

> — redirigir salida (sobrescribe)

Guarda la salida del comando en un archivo sobrescribiéndolo si ya existe.

Sintaxis básica


  $ comando > archivo.txt
      

Ejemplo:


  $ echo "Hola" > saludo.txt
      

Esto creará un archivo llamado saludo.txt con el contenido "Hola". Si el archivo ya existía, su contenido se sobrescribirá.

Ejemplo 2:


  $ ls > lista.txt
      

Mete en el fichero la salida del comando ls con el contenido actual.

Opción frecuente

>> — redirigir salida (añade)

Añade la salida al final del archivo, sin borrar lo anterior.

Es una forma segura de borrar carpetas, ya que no permite eliminar aquellas que contienen archivos

Sintaxis básica


  $ comando >> archivo.txt
      

Ejemplo:


  $ echo "Otra línea" >> saludo.txt
      

Esto añadirá "Otra línea" al final del archivo saludo.txt sin borrar el contenido anterior. Si el archivo no existía, se creará.

< — redirigir entrada

Usa el contenido de un archivo como entrada del comando.

Sintaxis básica


  $ comando < archivo.txt
      

Ejemplo


  $ sort < lista.txt
      

Ordena el contenido de lista.txt

| — tuberías (pipes)

Envía la salida de un comando como entrada de otro.

Sintaxis básica


  $ comando1 | comando2
      

Muestra la ruta absoluta del directorio actual.

Ejemplo:


  $ cat archivo.txt | head
      

Muestra las primeras líneas de archivo.txt usando cat para leer el archivo y head para mostrar solo las primeras líneas.

tee — mostrar y guardar a la vez

Muestra la salida en pantalla y además la guarda en un archivo.

Sintaxis básica


  $ comando | tee archivo.txt
      

Ejemplos


  $ ls | tee lista.txt
      

Opción frecuente

  • -a: añade en lugar de sobrescribir

Filtros y procesamiento de texto: grep, cut, sort, uniq, wc, sed, awk, tr.

Índice de la sección

Índice del curso