我正在使用gevent和gevent_inotifyx运行python来监视文件,使用IN_CLOSE_WRITE
掩码进行任何修改,等待文件在写入后关闭。我的活动是第一次被解雇但不是之后。我使用vim手动编辑文件。
使用不同的日志文件进行观察,并按预期工作。这是一个python日志文件,任何时候日志文件都会随着内容的变化而被触发。
有没有人遇到过这种情况?这可能是由于某些同步或刷新到磁盘?
答案 0 :(得分:6)
默认情况下,Vim将文件内容写入临时文件,然后将其移动到原始文件上,请参阅:help backup
。由于现在这是一个不同的文件(句柄),您的事件将停止触发。
您可以通过设置
使Vim覆盖原始文件:set backupcopy=yes
如果你想要处理这个问题,你必须监控文件的目录,并监视文件移动。