Ubuntu

在 Ubuntu 上,如何設計一個監視器以在將文件寫入目錄時執行程序?

  • April 26, 2010

我想在將文件寫入 Ubuntu 上的目錄時執行一個程序。我知道我可以寫一個監視器來做到這一點。(即不是基於事件的觸發器,而是“監視器”)。

要實現這一點 - 除了在 C 中編寫一個無限持續時間的 for 循環來輪詢目錄 - 你會採取哪些步驟來實現這一點?

當文件寫入目錄時,您將採取哪些步驟在 Ubuntu 上實現執行程序(另一個應用程序)的監視器?

(你這樣做的原因是寫入文件的程序處於有限的權限集(例如tomcat6)但執行的程序(現有軟體包)需要root(即在chroot監獄中執行程序) )

如果您正在編寫 C,為什麼不直接使用inotifylib?

或者,如果您只是編寫一個簡單的 shell 腳本,您可以使用watch. 兩者都在所有現代 Linux 變體中。

請參閱此 StackOverflow 問題:

https://stackoverflow.com/questions/511463/monitor-directory-for-changes

或者,如果無法安裝 inotify,請檢查以下程式方式:

http://aplawrence.com/Unixart/watchdir.html

引用自:https://serverfault.com/questions/136059