【问题标题】:How can I pipe bash output to a file and to the terminal at the same time? [duplicate]如何将 bash 输出同时通过管道传输到文件和终端? [复制]
【发布时间】:2017-02-08 06:13:31
【问题描述】:

这是一个非常基本的问题,但我在现有问题中基本上找不到它,所以如果之前已经回答过,请标记它。

我想将 bash 命令中的 stderr 通过管道传输到文件,但不阻止它在执行期间显示在终端上。

更具体地说,我有这个 .sh 文件:

nslookup MadeUpName
nslookup MadeUpName2
nslookup MadeUpName3

我正在这样做:

. ./myScript.sh 2>errors.txt

这可以将错误消息通过管道传递到 errors.txt,但现在我无法在终端中看到错误发生。

【问题讨论】:

    标签: linux bash stderr piping


    【解决方案1】:

    您可以使用tee 来显示错误并写入错误文件:

    myScript.sh 2> >(tee error.log; exit)
    

    如果您想了解有关此技术的更多信息,请参阅this page

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-18
      • 1970-01-01
      • 2010-10-12
      • 1970-01-01
      • 1970-01-01
      • 2019-01-24
      • 2015-07-22
      • 1970-01-01
      相关资源
      最近更新 更多