问题描述
很抱歉我的菜鸟问题,因为我是linux新手。请考虑以下linux命令:
/opt/mongodb-mms-automation/bin/mongodb-mms-automation-agent
-f /etc/mongodb-mms/automation-agent.config
-pidfilepath /var/run/mongodb-mms-automation/mongodb-mms-automation-agent.pid
>> /var/log/mongodb-mms-automation/automation-agent-fatal.log 2>&1
根据我的理解,>>
将标准输出重定向到文件,而2>&1
意味着标准错误将被重定向到与标准输出相同的位置。因此,在上述情况下,我希望标准输出和标准错误都将被重定向到/var/log/mongodb-mms-automation/automation-agent-fatal.log
。
但是显然不是这样。我可以看到所有信息/错误消息都被重定向到文件/var/log/mongodb-mms-automation/automation-agent.log
。有人可以解释一下我在阅读此命令时遇到什么错误吗?
此致
Meena
解决方法
标准输出和标准错误只是默认目标;该程序可能正在做很多事情,这些事情会通过重定向到文件来破坏保存日志的任何尝试:
- 它直接写入终端输出,例如/ dev / pts / 0。
- 它检测标准输出/错误是连接到文件还是终端,并相应地更改行为。
- 应用程序开发人员认为是最有用的行为。
换句话说,它是特定于应用程序的。您可能最好找到日志文件配置设置,并在确实需要时进行更改。通常,我发现保留默认值更为容易和安全(因为例如出于安全原因(例如沙箱),它们可能很方便),而是指向任何试图以某种方式处理该文件的软件中的默认位置。