Programación BASH

Cómo redirigir stderr a stdout en Bash

Cómo redirigir stderr a stdout en Bash
Los comandos en Linux toman alguna entrada del usuario, que podría ser un archivo o cualquier atributo, y al ejecutarse, dan una salida llamada salida estándar. La salida estándar podría ser una salida de éxito o una salida de error; ambos se mostrarán en la pantalla de su terminal. Pero en algunos casos, desea almacenar salidas estándar en un archivo para probar o depurar el código. En Linux, estas salidas se pueden redirigir a un archivo, y el proceso de captura se llama redirección.

Cada proceso en Linux produce tres flujos de datos, "stdin", "stdout" y "stderr":

Cada flujo de datos tiene una identificación numérica:

Id numérico Nombre
0 stdin
1 stdout
2 stderr

Expliquemos la redirección un poco más con detalle:

Cómo redirigir la salida estándar y el error estándar en Bash:

Para redirigir la salida estándar del comando, usaremos "1" con un operador de redirección que sea mayor que el signo ">":

$ ls 1> salida estándar.TXT

El comando anterior creará un archivo y colocará la salida estándar del comando "ls" en el archivo "stdout.txt "archivo.

Para leer el "stdout.txt ”, utilice:

$ gato estándar.TXT

También podemos redirigir el error estándar a un archivo usando el comando:

$ cat myfile.txt 2> stderr.TXT

Para ver el "stderr.txt ”, utilice:

$ gato stderr.TXT

Asegúrese de que el uso de "2" sea mayor que el signo ">". Dado que no hay "myfile.txt "en el directorio, el comando" cat "dará un error que se agregará en el" stderr.txt "archivo.

Estas salidas estándar también se pueden redirigir con un solo comando, use:

$ ls 1> salida estándar.txt 2> stderr.TXT

La salida del comando "ls" se escribirá en el campo "stdout.TXT"Archivo, pero el"stderr.TXT"Permanecerá vacío porque no habría ningún error.

Ahora hagámoslo para "stderr.TXT":

$ cat myfile.txt 1> salida estándar.txt 2> stderr.TXT

Utilice el comando que se menciona a continuación para leer "stderr.TXT."

$ gato stderr.TXT

Y, por supuesto, "stdout.txt ”estará vacío.

Conclusión:

El comando de Linux al ejecutarse proporciona una salida estándar que podría ser una salida exitosa o una salida de error. Generalmente, estas salidas no se pueden redirigir utilizando operadores de redirección; necesitamos usar identificadores numéricos específicos con el signo ">". En esta guía, aprendimos cómo usar estas teclas numéricas para redirigir la salida estándar a un archivo con ejemplos.

Tutorial de Shadow of the Tomb Raider para Linux
Shadow of the Tomb Raider es la duodécima incorporación a la serie Tomb Raider, una franquicia de juegos de acción y aventuras creada por Eidos Montre...
Cómo impulsar FPS en Linux?
FPS significa Cuadros por segundo. La tarea de FPS es medir la velocidad de fotogramas en reproducciones de video o actuaciones de juegos. En palabras...
Los mejores juegos de Oculus App Lab
Si es propietario de un visor Oculus, debe estar informado sobre la descarga lateral. Sideloading es el proceso de instalación de contenido que no es ...