1. 要求内核版本不低于2.6.13
2. 监控指定目录的变化情况
inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f%e' -e modify,delete,create,attrib /tmp/test
3. 今天结合C程序实验了下,每调用一次write()函数,inotify就会监测到一次 'modify' 事件,不管有没有调用fsync()
于是问题来了,如果要写一个大文件,必然调用write()很多次,那么inotify会收到很多次'modify'事件(可以通过拷贝一个大文件来验证)
然而大部分情况下,这不是我们想要的。
我们要的是文件编辑完后给个通知!!!
inotify提供了这样的功能: 监测 ‘close_write’ 事件,而不是'modify'
使用命令替换为
inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f%e' -e close_write,delete,create,attrib /tmp/test