How can I capture text from my terminal without redirecting it to a text file?
Basically, what I would like to do is, instead of just redirecting the out from my terminal command to a file, I would like to have the information also show in the terminal session.
If I use ~$ command > output.log I am no longer able to see the command process in the terminal window and therefore I do not know when the command has finished processing without looking at the output.log file. The commands I run take a few minutes to process and produce quite a bit of output. (hence me wanting to capture that output) Any suggestions?
Solution 1:
The answer to your question is tee
. Just use | tee [output file]
instead of > [output file]
Thus, sudo apt-get update > out.log
becomes
sudo apt-get update | tee out.log
.
For more information: LinuxQuestion.org: BASH: How to Redirect Output to File, AND Still Have it on Screen, Linux by Examples: How to redirect output to a file as well as display it out.
Solution 2:
You can use tee
.
Example: $ls 2>&1 | tee text.txt
This will print the output of the command into the log file as well in the Terminal.
Solution 3:
command |tee output.log
both prints, and captures.