如何在 Linux 中将 stdout 和 stderr 永久重定向到 rsyslog

如何在 Linux 中将 stdout 和 stderr 永久重定向到 rsyslog

我使用 Yocto 中的嵌入式 Linux 版本。我不希望系统上运行的任何应用程序都在控制台中显示信息。我想将这些日志重定向到系统日志,或者最终重定向到其他一些常规文件。我知道在我的脚本或应用程序中我可以直接登录到 rsyslog,但是更改系统中所有应用程序的源太费力了。是否可以强制将 stdout 和 stderr 重定向到 rsyslog 或最终永久重定向到其他一些常见文件?

答案1

您可以写信给logger.默认情况下,它将使用设施和优先级,user.notice但这可以使用适当的命令标志进行更改。

logger 'this is a test'

ps -ef 2>&1 | logger

答案2

您可以使用重定向来运行 shell:

$ bash >out 2>err
ls
exit

现在,您在该 shell 中发出的命令的所有输出都将进入out文件,所有错误将进入err.

相关内容