我是dnotify / inotify命令的新手。任何人都可以帮助我如何编写脚本以使其连续监视目录并指示对该目录进行了更改或修改。
Inotify本身是一个内核模块,可以通过例如C程序的调用进行访问。 http://www.ibm.com/developerworks/linux/library/l-ubuntu- inotify/
有一个名为inotify-tools的应用程序套件,其中包含:
inotifywait-等待使用inotify更改文件 http://linux.die.net/man/1/inotifywait
inotifywait-等待使用inotify更改文件
http://linux.die.net/man/1/inotifywait
和
inotifywatch-使用inotify收集文件系统访问统计信息 http://linux.die.net/man/1/inotifywatch
inotifywatch-使用inotify收集文件系统访问统计信息
http://linux.die.net/man/1/inotifywatch
您可以直接从命令行使用inotify,例如,像这样连续监视主目录下的所有更改(可能会生成大量输出):
inotifywait -r -m $HOME
以下是一个脚本,该脚本可以连续监视并响应Apache日志活动,该脚本是从inotifywait的man文件中复制的:
#!/bin/sh while inotifywait -e modify /var/log/messages; do if tail -n1 /var/log/messages | grep httpd; then kdialog --msgbox "Apache needs love!" fi done