Categorías: Linux

Dominando la terminal de linux : la redirección

 

 

Después de unas fiestas en las que esperamos que disfrutáseis de la familia, continuamos con nuestra guía sobre la terminal de Linux. Hoy vamos a hablar sobre como redireccionar la salida y la entrada a archivos.

La redirección

Es muy usual, que quieras guardar en un archivo, el resultado de ejecutar un comando o quieras proporcionarle a un comando los datos desde un archivo. Para ello podemos usar la redirección. Este concepto se basa en Streams o flujos, en UNIX hay 3 flujos stdin, stdout, stderr, que significan standar input, standar outpunt, stardar error. Esto nos afecta de la siguiente manera:

  • Cualquier información que se mande a stdout saldrá por pantalla en la terminal. (Comportamiento por defecto)
  • Cualquier información que se mande a stderr saldrá por la pantalla de la terminal. (Comportamiento por defecto)
  • Cualquier información que se teclee en la terminal se mandará a stdin.

Linux tiene la capacidad de modificar, el destino o el origen de los flujos y en esto nos vamos a basar, este concepto comúnmente se denomina redirección.

Redirección de la salida

Para redireccionar la salida y que todo el contenido que se muestre en pantalla se guarde en un archivo, se usa el símbolo > seguido de la ruta del fichero donde se desea guardar. Si el fichero no existe se crea y si el fichero existe se sobrescribe. Ejemplo:

Usando la redireccion de stdout

 

Si no queremos que nos “machaque” el archivo, podemos usar el operador >> que lo añadirá al final del archivo que le estamos indicando.

 

Redirección de la entrada

Para pasarle datos desde un fichero a un comando de la terminal podemos usar el símbolo < seguido de la ruta del fichero.

Usando la redirección de stdin

El comando grep lo explicaremos en otra entrada, pero básicamente podemos decir que le pasamos un conjunto de información y nos filtra los resultados.

 

Redirección de la salida estándar de errores

Esta opción suele ser menos común, pero hay veces que nos interesa guardar en un fichero toda la información sobre los errores que nos está dando cierto programa, para luego analizarlos a fondo. Para ello debemos usar: 2> + la ruta_archivo.  Por ejemplo si queremos guardar en un fichero los errores de utilizar el grep anterior pondríamos: $ grep -E “e” < misArchivos 2> errores

Normalmente se suele usar, para redireccionar los errores a /dev/null que es un fichero especial de Unix que, a grandes rasgos, recibe cualquier tipo de información y la destruye.

Jorge Durán

Entusiasta de la tecnología desde los 10 años, desarrollador y creador de varios proyectos de software y autodidacta por naturaleza. Ingeniero Informático por la USAL y .Net backend developer en idealista.

Share
Publicado por
Jorge Durán

Recent Posts

Docker: conceptos principales y tutorial paso a paso

Hoy queremos hablaros de Docker un proyecto que cada día es más usado, porque permite…

3 años hace

Crea diagramas rápidamente usando código

Cada vez estamos más acostumbrados a usar código para generar la infraestructura (IaC), documentar nuestro…

3 años hace

Procesamiento del lenguaje natural con ElasticSearch

Uno de los problemas que se presentan con una mayor frecuencia hoy en día, es…

4 años hace

Elige tecnología clásica y aburrida

Uno de los problemas que solemos tener los programadores, es que nos gusta estar a…

4 años hace

Cómo usar Docker en Windows

Docker es una de las herramientas más usadas por los desarrolladores, sin embargo, usarlo en…

4 años hace

Analiza el coste del uso de JavaScript

Como seguramente sabrás el uso de JavaScript ha crecido exponencialmente en los últimos tiempos, sin…

4 años hace