2010-01-01 45 views
0

我使用logger命令将消息记录到/ var/log/messages但是如何使用记录器来保存标准输出,错误输出消息?像这样的东西不起作用。错误输出到记录器

grep `date +'%y%m%d'` /var/log/mysqld.log | sed 's/^/computer /' | logger 2> logger 

回答

2

你跟重定向混淆重定向到工艺(管道,或|)到一个文件中(>)。

您需要重定向标准错误使用2>&1,然后通过管道(|)到您的记录器进程标准输出

例如

grep .... 2>&1 | logger 

这假设您使用的是sh或变体。语法不同于csh。值得看看Unix Power Toolsthis excerpt欲了解更多信息(尤其是your previous question似乎强相关)。

+0

我刚订购了“Unix Power Tools”一书。感谢那个链接。 我还没有测试过你的命令。但它一定是有效的。 – shantanuo 2010-01-02 04:17:03