fiesta comenzando con -v opción produce una larga salida en la consola¿Se puede redireccionar la salida bash -v?
$ bash -v
source ~/Dropbox/bin/tim_functions.sh
\#!/bin/bash
...several hundred more lines
Me gustaría capturar la salida a un archivo para que sea más fácil de navegar a través de, pero he intentado bash -v 2>&1 > out_bash.txt
y bash -v | tee out_bash.txt
y no puedo capturar la información en la pantalla del terminal dentro de un archivo. Es como si la salida detallada no fuera stderr o stdout. ¿Cómo puede ser esto?
¿Alguien puede sugerir una forma de capturar la salida de bash -v?
he intentado su sugerencia, pero no hubo suerte - todavía no captura la información. Parece que el resultado de bash -v está relacionado con la información de depuración. Y la información de depuración parece no ser stderr o stdout. Estoy empezando a pensar que no se puede redireccionar desde la terminal. – Tim
Bash no es mágico; cualquier cosa enviada a su tty salió de la llamada 'write()' (o equivalente) de * somewhere *. Lo que puede estar sucediendo es que el propio shell interactivo está produciendo el resultado, mientras que la redirección solo se puede aplicar a los procesos hijos engendrados. Esta es la razón por la que pensé que enrollar una capa y elevar el redireccionamiento podría funcionar ... – phs
Pero cuando estás en una sesión bash y ejecutas bash -v, eso genera un proceso hijo (la nueva sesión bash). Así que, a menos que el proceso principal realizara las llamadas write() para la información de depuración del hijo, en lugar del proceso secundario que llama a write() en sí, aún parece que la información del terminal debe ser re-direccionable. Pero tal vez así es como se genera la información de depuración: el padre de alguna manera supervisa la actividad del niño e informa sobre ello. – Tim