如何从我的终端捕获文本而不将其重定向到文本文件?

如何从我的终端捕获文本而不将其重定向到文本文件?

基本上,我想要做的是,不仅仅是将终端命令的输出重定向到文件,我还想将信息显示在终端会话中。

如果我使用~$ 命令 > 输出.log 我无法再在终端窗口中看到命令进程,因此如果不查看 output.log 文件,我就不知道命令何时完成处理。我运行的命令需要几分钟才能处理并产生相当多的输出。(因此我想捕获该输出)有什么建议吗?

答案1

你的问题的答案是tee。只需使用| tee [output file]而不是> [output file]

这样,sudo apt-get update > out.log 就变成 sudo apt-get update | tee out.log

了解更多信息:LinuxQuestion.org:BASH:如何将输出重定向到文件,并且仍将其显示在屏幕上Linux 示例:如何将输出重定向到文件并将其显示出来

答案2

您可以使用tee

例子:$ls 2>&1 | tee text.txt

这会将命令的输出打印到日志文件以及终端中。

答案3

command |tee output.log既可打印,又可捕获。

相关内容