5

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?

Themiddaysun
  • 1,881

3 Answers3

7

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.

moewe
  • 529
  • 3
  • 8
4

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.

Eliah Kagan
  • 117,780
harisibrahimkv
  • 7,256
  • 11
  • 44
  • 71
3

command |tee output.log both prints, and captures.

Eliah Kagan
  • 117,780
Mahesh
  • 12,738