天天看點

(轉)【pyinotify 子產品】Python監視檔案變化

#!/usr/bin/env python

#coding=utf-8

import os

import gobject

from  pyinotify import  WatchManager, ProcessEvent, ThreadedNotifier, IN_DELETE, IN_CREATE,IN_MOVED_TO,IN_MOVED_FROM

class hechao(ProcessEvent):

    def process_IN_CREATE(self, event):

        print   "建立檔案: %s "  %   os.path.join(event.path, event.name)

    def process_IN_DELETE(self, event):

        print   "删除檔案: %s "  %   os.path.join(event.path, event.name)

    def process_IN_MOVED_TO(self, event):

        print   "移來檔案: %s "  %   os.path.join(event.path, event.name)

    def process_IN_MOVED_FROM(self, event):

        print   "移走檔案: %s "  %   os.path.join(event.path, event.name)

path = "/usr/local/apache/htdocs"

gobject.threads_init()

wm = WatchManager()

mask = IN_DELETE|IN_CREATE|IN_MOVED_TO|IN_MOVED_FROM

notifier = ThreadedNotifier(wm, hechao())

wm.add_watch(path, mask,rec=True)

notifier.start()