2010-01-01 54 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