Ubuntu
在 Ubuntu 上,如何設計一個監視器以在將文件寫入目錄時執行程序?
我想在將文件寫入 Ubuntu 上的目錄時執行一個程序。我知道我可以寫一個監視器來做到這一點。(即不是基於事件的觸發器,而是“監視器”)。
要實現這一點 - 除了在 C 中編寫一個無限持續時間的 for 循環來輪詢目錄 - 你會採取哪些步驟來實現這一點?
當文件寫入目錄時,您將採取哪些步驟在 Ubuntu 上實現執行程序(另一個應用程序)的監視器?
(你這樣做的原因是寫入文件的程序處於有限的權限集(例如tomcat6)但執行的程序(現有軟體包)需要root(即在chroot監獄中執行程序) )
如果您正在編寫 C,為什麼不直接使用
inotify
lib?或者,如果您只是編寫一個簡單的 shell 腳本,您可以使用
watch
. 兩者都在所有現代 Linux 變體中。
請參閱此 StackOverflow 問題:
https://stackoverflow.com/questions/511463/monitor-directory-for-changes
或者,如果無法安裝 inotify,請檢查以下程式方式: