07.06.2023

Una redirección de Entrada-Salida en Linux

Descripción

Linux se “construye” en torno a la filosofía “una herramienta para una tarea”. Debido a esto, la corriente principal Linux Las distribuciones tienen muchas y muchas utilidades, cada una de ellas tiene solo unas pocas funciones, pero estas funciones funcionan muy bien.

Estas utilidades pueden enviar sus resultados de "trabajo" de un proceso a otro a través del mecanismo de redirecciones de entrada-salida. Podría ser útil en el desarrollo, soporte de servicios, etc.

Todos los procesos en Linux están trabajando en 3 flujos, entrada estándar (stdin), salida estándar (stdout) y error estándar (stderr). Estos flujos tienen números reservados por el sistema. El flujo Stdin tiene el número "0", el flujo "1" se usa para la salida estándar, el flujo "2" se usa para mostrar errores.

El flujo de "Entrada" recibe datos del teclado de la computadora o de otra salida de script. Algunos ejemplos se describirán más adelante.

De forma predeterminada, el flujo de salida estándar también envía datos al terminal del sistema.

El flujo de error estándar también envía sus datos al terminal del sistema, pero hay una diferencia con el punto anterior: el flujo de salida estándar muestra el resultado si el comando se ejecuta correctamente. En caso de que algo no esté bien, los datos se enviarán a la salida de error estándar.

Redirecciones de transmisión

Descrito en el párrafo anterior, los flujos del sistema podrían redirigir los resultados del trabajo entre sí, a variables, archivos, etc.

Los corchetes dobles son "agregar" datos de transmisión al final del contenido existente del objeto "objetivo".

El corchete único "reemplazará" el contenido del objeto de destino con los datos del flujo "fuente".

Tubería

El símbolo “Tubería” está reservado en Linux para "enviar" flujo de una utilidad al archivo u otro programaram. Parece como "prog.ram ANTES de que la tubería esté funcionando, luego envía los resultados a la entrada de la utilidad DESPUÉS de la tubería”. Por ejemplo, historial de comandos | grep touch mostrará el historial de comandos del usuario en la consola y lo "reenviará" más. Luego, la utilidad "grep" filtrará este flujo y mostrará los comandos que contienen solo la palabra "tocar".

Utilidades de filtro

Los filtros son la clase de utilidades del sistema que generalmente se usan "juntos" con la tubería. Los filtros más populares son:

Conclusiones finales

En resumen, es posible decir que la "gestión" de flujos del sistema es una habilidad muy útil. Estaría bien para el desarrollo de software, el soporte técnico del servidor o cualquier creación de scripts de automatización.