Sé que puedo redirigir stdout
a un archivo antes de ejecutar un script, pero ¿hay alguna forma de acceder al resultado completo de un programa que ya se ejecutó? Cuando la salida es demasiado larga, la ventana del terminal la corta y no puedo ver las impresiones iniciales.
Respuesta1
Hay un par de sugerencias:
- aumente el número de líneas retenidas en la ventana de su terminal. En todos los sistemas que puedo, normalmente lo tengo configurado en algo así como 10.000 líneas (o el máximo posible es menos).
- (probablemente un poco más práctico) Cuando sepa que es posible que desee capturar la salida, inicie un nuevo shell bash en ejecución y canalice la salida a un archivo con tee (
bash | tee record.txt
). Cualquier resultado de los comandos ejecutados en ese shell se colocará en el archivo "record.txt". Desafortunadamente, no captura la entrada (incluidos los comandos que escribe) ni las indicaciones del shell. - (mejor) Antes de ejecutar cualquier cosa que creas que quieras proteger, utiliza
script
. Esto comenzará a capturar tanto su entrada como la salida del programa. Cuando haya terminado con todo, salga del shell o escriba Ctrl-D. Nota:Es posible que la salida generada por el script no se escriba hasta que finalice el 'script'.