Save all terminal outputs in a file
What's the best way to save your terminal output to a file?
- I'm not talking about redirection
command > file.txt - Not the history
history > file.txt, I need the full terminal text - Not with hotkeys !
Something like terminal_text > file.txt
You can use script . It will basically save everything printed on the terminal in that script session.
From 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).
You can start a script session by just typing script in the terminal, all the subsequent commands and their outputs will all be saved in a file named typescript in the current directory. You can save the result to a different file too by just starting script like.
script output.txt
To logout of the script session (stop saving the contents), just type exit .
Let me give you an example
$ script output.txt
Script started, file is output.txt
$ ls
output.txt testfile.txt foo.txt
$ exit
exit
Script done, file is output.txt
Now if i read the file.
$ 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 also has many options e.g. running quietly -q ( --quiet ) without showing/saving program messages, it can also run a specific command -c ( --command ) rather than a session, it also has many other options. Check man script to get more ideas.