¿Hay alguna forma de guardar toda la salida del terminal en un archivo con un comando?
- No estoy hablando de la redirección
command > file.txt - No el historial
history > file.txt, necesito el texto completo del terminal - ¡No con teclas rápidas!
Algo así como terminal_text > file.txt
Respuesta aceptada:
Puedes usar script . Básicamente guardará todo lo impreso en la terminal en ese script sesión.
Desde man script :
script makes a typescript of everything printed on your terminal.
It is useful for students who need a hardcopy record of an
interactive session as proof of an assignment, as the typescript file
can be printed out later with lpr(1).
Puede iniciar un script sesión simplemente escribiendo script en la terminal, todos los comandos subsiguientes y sus resultados se guardarán en un archivo llamado typescript en el directorio actual. También puede guardar el resultado en un archivo diferente simplemente iniciando script como:
script output.txt
Para cerrar la sesión del script sesión (deja de guardar el contenido), simplemente escribe exit .
Aquí hay un ejemplo:
$ script output.txt
Script started, file is output.txt
$ ls
output.txt testfile.txt foo.txt
$ exit
exit
Script done, file is output.txt
Ahora si leo el archivo:
$ cat output.txt
Script started on Mon 20 Apr 2015 08:00:14 AM BDT
$ ls
output.txt testfile.txt foo.txt
$ exit
exit
Script done on Mon 20 Apr 2015 08:00:21 AM BDT
script también tiene muchas opciones, p. corriendo silenciosamente -q (--quiet ) sin mostrar/guardar mensajes del programa, también puede ejecutar un comando específico -c (--command ) en lugar de una sesión, también tiene muchas otras opciones. Comprobar man script para obtener más ideas.