通常我使用節點將某些服務器消息記錄到本地文件中,但有時文件太大,所以我會定期通過logroate工具歸檔此大文件(例如:將linz.log移動到linz-2017-06 -19.log,現在linz.log文件是空的,但有時node仍然會寫數據到linz-2017-06-19.log,我猜可能linz.log描述符不會被改變)我可以監視Linux上的文件重命名事件嗎?
1
A
回答
0
您可以使用inotifywait
inotifywait有效地等待使用Linux的inotify(7)接口更改文件。它適用於等待來自shell腳本的文件更改。它可以在事件發生時退出,或者在事件發生時持續執行和輸出事件。
實施例:
touch /tmp/foofile
inotifywait -e move /tmp/
mv /tmp/foofile /tmp/barfile
從inotifywait
Setting up watches.
Watches established.
/tmp/ MOVED_FROM foofile
+0
您應該顯示代碼來執行此操作,而不是命令。堆棧溢出是編程和開發問題的網站。編程答案在這裏適用。 – jww
相關問題
- 1. 我可以重命名cucumber的step_definitions文件夾嗎?
- 2. 我們可以監視statusBar點擊事件嗎?
- 3. Linux上64位Java監視文件
- 4. ASP.Net Webforms:可以監聽RequiredFieldValidator嗎? (事件)
- 5. AppleScript可以監聽事件嗎?
- 6. 在linux中監視文件
- 7. 我可以使用表單字段重命名上傳圖像文件嗎?
- 8. 我可以在Linux上動態加載可執行文件嗎?
- 9. 我可以重命名Main.mxml嗎?
- 10. 我可以在不是我的網站上添加事件監聽器嗎?
- 11. 以C#重命名文件
- 12. 我應該重命名用戶上傳的文件嗎?
- 13. 當我重命名文件夾時,FileSystemWatcher重命名事件未被提出
- 14. 盲目重命名文件 - linux
- 15. 監視Outlook文件夾重命名/添加/刪除與外接
- 16. 我可以重命名包含從GitHub克隆的文件夾(&文件)的本地文件夾嗎?
- 17. 我可以監視對VisualBasic 6 ActiveX控件的COM調用嗎?
- 18. 我可以在Linux上創建一個exe文件嗎?
- 19. 我可以安全地編輯perforce中的重命名文件
- 20. 我們可以重命名/寫本地文件的HTML5
- 21. 使用Wildfly,我可以遠程監聽緩存事件嗎?
- 22. Actionscript組件可以監聽它自己的propertyChange事件嗎?
- 23. 我可以忽略文本框上的輕按事件嗎?
- 24. Linux,監視文件的讀取速率
- 25. 我可以使用單擊視圖的onclick事件和上下文菜單嗎?
- 26. 我們可以更改DispatcherServlet上下文配置文件名嗎?
- 27. 在Linux上修改時間戳文件的批量重命名
- 28. 文件重命名;我可以得到一些反饋意見
- 29. 我可以設置文件被下載到的文件名嗎?
- 30. IIS6緩存重命名的文件夾 - 可以刷新/重置嗎?
參見輸出['的inotify()'](http://man7.org/linux/man-pages/man7/inotify .7.html) –
這是[XY問題](https://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)。應該反過來詳細解釋並詢問實際問題 - 將數據寫入錯誤的文件。 – kaylum
@kaylum確實。解決* real *問題 - 不要編寫更多代碼來隱藏症狀。除非你喜歡黑客一起,複雜的,不可維護的系統,不能很好地工作。僅僅因爲你知道如何編寫代碼並不意味着你應該通過扔掉更多的代碼來解決所有問題。通知守護進程它需要切換到新的日誌文件的標準方法是向進程發送'SIGHUP'。希望你沒有通過重定向'stdout'或'stderr'進行日誌記錄。如果你是,你剛剛知道爲什麼這是一個**糟糕**的想法。 –