回答
如果你不想安裝工具,你可以自己製作。只是一個想法。 使用find
命令創建目錄的基線文件。使用循環或cron作業,find
使用相同參數的目錄,並根據基線文件檢查新文件。使用工具,如diff
,以獲得差異..
如
find /path [other options] >> baseline.txt
while true #or use a cron job
do
find /path [same options] >> listing.txt
diff baseline.txt listing.txt
# do processing here...
mv listing.txt baseline.txt # update the baseline.
sleep 60
done
大多數Unix變體對於這樣的一個API,但它不規範。在Linux上,有inotify。在命令行上,您可以使用inotifywait
。用例:
inotifywait -m /path/to/dir | while read -r dir event name; do
case $event in
OPEN) echo "The file $name was created or opened (not necessarily for writing)";;
WRITE) echo "The file $name was written to";;
DELETE) echo "The file $name was deleted ";;
esac
done
inotify的事件類型往往不完全是你想要什麼通知(例如OPEN很寬),所以如果你最終使自己的文件檢查不心疼。
這是正確的答案,因爲它顯示瞭如何使用API來監視更改。 ghostdog74的答案可能有用,但它有資源成本。如果你需要監控1000個目錄呢? – 2012-05-08 17:17:42
注意:這個答案只適用於使用Linux內核2.6.13或更高版本。不知道其他Unicies。 – 2013-07-17 14:55:42
請您澄清一下* *閱讀-r目錄事件名稱; *做* *? – arod 2013-10-29 23:09:49
- 1. 更改監視器目錄
- 2. AIX監視目錄更改
- 3. 更改監視目錄和子目錄
- 4. 目錄監控
- 5. kQueue目錄監控
- 6. 監視文件更改目錄
- 7. CakePHP監視目錄的更改
- 8. 如何監視Windows目錄的更改?
- 9. BPEL流程監控目錄
- 10. 監控遠程FTP目錄
- 11. Tomcat Servlet Jnotify目錄監控
- 12. 活動目錄監控
- 13. WCF服務監控目錄
- 14. 目錄修改監視
- 15. 監控文件更改
- 16. MySql備份/更改監控
- 17. 監視或記錄目錄權限更改?
- 18. 更改目錄
- 19. 更改目錄
- 20. 更改目錄
- 21. 使用LiveBindings監控列表
- 22. 使用ReadDirectoryChangesW監控目錄API
- 23. ASP.Net調試目錄監控HttpException
- 24. 如何監控vala中的目錄?
- 25. 監控目錄內容變化
- 26. 如何用Bash監控目錄?
- 27. 活動目錄帳戶鎖定監控
- 28. java 7目錄監控問題
- 29. Oracle表更改監視器
- 30. htaccess更改目錄
僅供我參考 - 做這樣的事情存在嗎? – siliconpi 2010-10-20 13:02:38
你在說什麼「事情」?如果你正在談論用於這些事情的工具,那麼是的。像tripwire,inotify等工具... – ghostdog74 2010-10-20 13:06:56