我正在尝试将命令行程序的所有输出重定向到文件。我正在使用 Bash。一些输出被定向到文件,但一些仍然出现在终端中并且没有存储到文件中。
此处描述了类似的症状:
但是我尝试了建议的解决方案(捕获标准错误)但没有成功:
<cmd> <args> > stdout.txt 2> stderr.txt
文件 stderr.txt 已创建但为空。
一个可能的线索是命令行程序是与同一台机器上的服务器通信的客户端。可能是某些输出来自服务器。
有没有办法从终端捕获所有输出,无论其来源如何?
编辑:
我已经确认缺少的输出是由服务器生成的。在单独的终端中运行命令会在两个终端中产生一些输出,我可以将命令终端的所有输出通过管道传输到文件中。这引发了有关如何捕获服务器输出的问题,但这是一个不同的问题。