Linux环境下监控目录变化的Python代码片段,,这段代码可以监控当前目录


这段代码可以监控当前目录及子目录文件的创建,修改,删除等变化,需要用到pyinotify模块,pyinotify模块可以到:http://pyinotify.sourceforge.net/下载

#!/usr/bin/env python#coding=utf-8import osfrom pyinotify import WatchManager, Notifier, ProcessEvent, IN_DELETE, IN_CREATE,IN_MODIFYwm = WatchManager()mask = IN_DELETE | IN_CREATE |IN_MODIFY   # watched eventsclass PFilePath(ProcessEvent):    def process_IN_CREATE(self, event):        print   "Create file: %s " %   os.path.join(event.path, event.name)    def process_IN_DELETE(self, event):        print   "Delete file: %s " %   os.path.join(event.path, event.name)    def process_IN_MODIFY(self, event):            print   "Modify file: %s " %   os.path.join(event.path, event.name)if __name__ == "__main__":    notifier = Notifier(wm, PFilePath())    wdd = wm.add_watch('.', mask, rec=True)    while True:        try :            notifier.process_events()            if notifier.check_events():                notifier.read_events()        except KeyboardInterrupt:            notifier.stop()            break

评论关闭