pyinotify无法观看当前的目录

时间:2014-01-08 07:56:33

标签: python pyinotify

我在家庭目录(/ home / name)下使用pyinotify编写了一个脚本并运行它。虽然我不能让脚本观看我的家庭目录(/ home / name)或者包含我的家庭目录的dirs,如root(/)和/ home /。所有其他目录都没问题,比如/ var,/ boot,/ home / name / Documents。

让我以干净的方式描述它:

dirs that are NOT OK:
/
/home
/home/name (script is here)

All other dirs are OK, e.g.
/bin
/var
/home/name/Documents

脚本:

import pyinotify

class MyEventHandler(pyinotify.ProcessEvent):
    def process_IN_ACCESS(self, event):
        print "ACCESS event:", event.pathname

    def process_IN_ATTRIB(self, event):
        print "ATTRIB event:", event.pathname

    def process_IN_CLOSE_NOWRITE(self, event):
        print "CLOSE_NOWRITE event:", event.pathname

    def process_IN_CLOSE_WRITE(self, event):
        print "CLOSE_WRITE event:", event.pathname

    def process_IN_CREATE(self, event):
        print "CREATE event:", event.pathname

    def process_IN_DELETE(self, event):
        print "DELETE event:", event.pathname

    def process_IN_MODIFY(self, event):
        print "MODIFY event:", event.pathname

    def process_IN_OPEN(self, event):
        print "OPEN event:", event.pathname

def main():
    # watch manager
    wm = pyinotify.WatchManager()
    wm.add_watch('/var/log', pyinotify.ALL_EVENTS, rec=True)

    # event handler
    eh = MyEventHandler()

    # notifier
    notifier = pyinotify.Notifier(wm, eh)
    notifier.loop()

if __name__ == '__main__':
    main()

1 个答案:

答案 0 :(得分:1)

认为你需要为你的家庭目录指定一块手表。

wm.add_watch('/home', pyinotify.ALL_EVENTS, rec=True)