gpt4 book ai didi

bash - 如何识别 Linux 屏幕上打印的内容?

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

我在我的 C++ 应用程序中使用了一个库,并试图在一个文件中捕获所有输出。我尝试将 stderr 重定向到 stdout,然后将 stdout 重定向到这样的文件:

./a.out 2>&1 > out.txt

这几乎捕获了我应用程序中的所有内容,但控制台上仍有一些与我正在使用的库相关的输出。我的问题是:

  • 除了 stdout/stderr 之外还有什么吗? (标准输入除外)
  • 如果有,我如何在我的案例中识别它们?
  • 然后如何将它们重定向到同一个文件?

注意:如果有人熟悉,库名为 SystemC (这是一种基于 C++ 的事件驱动模拟库/语言,主要用于系统/硬件设计)。

最佳答案

您必须在任何流到流重定向之前设置输出文件,否则 bash 无法检测要输出的文件名。在您的情况下,您可以看到 stderr 输出。

参见 bash redirections引用手册。

解决方法:

./a.out >out.txt 2>&1

或者只是:

./a.out &>out.txt

关于bash - 如何识别 Linux 屏幕上打印的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16147658/

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