gpt4 book ai didi

bash - 将 stdout/stderr 重定向到多个文件

转载 作者:行者123 更新时间:2023-11-29 08:49:08 24 4
gpt4 key购买 nike

我想知道如何将 stderr 重定向到多个输出。我用这个脚本试过了,但我不能让它正常工作。第一个文件应该同时具有 stdout 和 stderr,第二个文件应该只有错误。

perl script.pl &> errorTestnormal.out &2> errorTest.out

有更好的方法吗?任何帮助将非常感激。谢谢。

最佳答案

perl script.pl 2>&1 >errorTestnormal.out | tee -a errorTestnormal.out > errorTest.out

会做你想做的事。

这有点乱,让我们一步一步来。

  • 我们说过去转到 STDERR 的内容现在转到 STDOUT
  • 我们说过去转到 STDOUT 的内容现在将转到 errorTestnormal.out。

现在,STDOUT 被打印到一个文件,STDERR 被打印到STDOUT。我们想将 STDERR 放入两个不同的文件中,我们可以使用 tee 来完成。 tee 将它提供的文本附加到文件中,并回显到 STDOUT

  • 我们使用 tee 附加到 errorTestnormal.out,因此它现在包含所有 STDOUTSTDERR script.pl 的输出。
  • 然后,我们将teeSTDOUT(包含来自script.plSTDERR)写入errorTest.out

在此之后,errorTestnormal.out 具有所有的 STDOUT 输出,然后是所有的 STDERR 输出。 errotTest.out 仅包含 STDERR 输出。

关于bash - 将 stdout/stderr 重定向到多个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8124220/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com