2016-06-17 74 views

回答

2

將您的>更改爲>>(後者表示追加)。此外,tail -f將按定義掛起:它將監視文件以獲取新數據。

如果你的系統記錄每天都在旋轉,那麼你可以簡單地使用

#!/bin/bash 
cat /var/log/syslog | grep -i "error" >> /var/log/syserrorlog.log 

如果不旋轉,你可以添加一個grep,以過濾掉有關日期

+0

謝謝..明天早上我會試試這個,讓你知道結果 – Kerry

+0

完美...感謝您的幫助 – Kerry

0

嘗試使用管道logrotate。這是用於定期輪換日誌的守護進程(例如,存檔日誌文件,然後每天晚上清除它們)。它支持許多配置選項,其中之一是postrotate - 旋轉完成後執行的自定義腳本。說明從logrotate的手冊頁複製:

postrotate/endscript

postrotate和endscript(兩者必須由他們自己上出現線條)之間的界限被執行(使用/ bin/sh的)在 日誌文件旋轉後。這些指令可能只出現在日誌文件定義 中。通常,日誌文件的絕對路徑作爲腳本的第一個參數傳遞給 。如果指定了共享腳本,則將整個 模式傳遞給該腳本。另見prerotate。請參閱共享腳本 和nosharedscripts以進行錯誤處理。

系統日誌也是一個標準的守護進程,所以它應該有配置文件在/etc/logrotate.d/。你可以在那裏添加你的命令。

相關問題