How to copy the terminal output?
Solution 1:
There are 2 options,
-
Either you can copy-paste the selected text using
Ctrl + Shift + C
andCtrl + Shift + V
in which you have freedom what things to copy OR -
Redirect the text to a file using redirection
program1 >outputfile.txt 2>errorfile.txt
here, all the stdout will go to outputfile.txt while all the stderr will go to errorfile.txt.
P.S. from the comments below,
- Select the text to be pasted, and use mouse middle button (scroll wheel button) to paste it at desired place.
Solution 2:
Save console output into a file:
-
tee
command
tee command - read from standard input and write to standard output and files.
It automatically creates file and save, all the output of cmd ps -ax
into a file named as processes_info
in the same folder from where the cmd has run.
user@admin:~$ ps -ax | tee processes_info
-
script
command
script command - make typescript of terminal session.
user@admin:~$ script my_console_output.txt
This creates a file named as my_console_output.txt
and will open a subshell and records all information through this session.
After this, script get started and whatever the console output, it will get stored in the file my_console_output.txt
; unless and until the script ends when the forked shell exits. (e.g., when the user types exit
or when CTRLD is typed.)
user@admin:~$ script -c "ps ax" processes_info.txt
-
it starts the script;
-
creates the file
processes_info.txt
; -
stores the console output into the file;
-
end (close) the script.
Other example:
script -c 'echo "Hello, World!"' hello.txt
Solution 3:
As opposed to the solutions suggested above, you may get into a situation where the output was already printed and you weren't smart enough to know beforehand that you'd like to record it somehow.
In that case, you can at least save to a file the text that can be seen at the moment in your TTY using the backlog via /dev/vcs#
. For example if you were using /dev/tty1
, this terminal's backlog is available in /dev/vcs1
so for example:
# cat /dev/vcs1 > tty1.log
Credits are reserved for The Arch Wiki: https://wiki.archlinux.org/index.php/Copying_text_from_a_terminal#Accessing_Linux_terminal_backlog