使用 linux bash,我必须将我的 nodejs 应用程序的日志重定向到 stdout 和 stderr 日志文件,而且还要创建第三个日志文件,将它们合并为一个。
我用过:node app.js 1>log/stdout.log 2>log/stderr.log
我搜索了一些命令来附加以创建将 stdout.log 与 stderr.log 合并到 combined.log 文件中的日志文件。
根据其他类似问题的建议,我尝试使用 tee
命令,但我做不到。
你能帮帮我吗?
谢谢
最佳答案
默认情况下,您有 3 个变量:0
包含 stdin
,1
包含 stdout
和 2
包含 stderr
,能够执行您的建议意味着使用第三个占位符 3
和tee
命令:
默认情况下 tee
仅“捕获”stdout
(((node app.js | tee log_stdout.txt) 3>&1 1>&2 2>&3 | tee log_stderr.txt ) 3>&2 2>&1 1>&3 ) > log_combined.txt 2>&1
可以找到详细解释here
关于linux - Bash Linux 如何创建 stderr、stdout 和组合日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48440232/