Python のウォッチドッグ モジュールを使用して、ファイル システムの変更をリッスンしようとしています。2 つの異なるディレクトリからファイルを監視したいと考えています。単一のファイル ウォッチの場合は、PatternMatchingEventHandler
fromを使用しましwatchdog.events
た。複数のディレクトリに同じものを使用したい。
コード:
import time
from watchdog.observers import Observer
from watchdog.events import PatternMatchingEventHandler
class EventHandler(PatternMatchingEventHandler):
def on_modified(self, event):
super(EventHandler, self).on_modified(event)
print event
if __name__ == "__main__":
dir_name = ["/home/user1/first", "/home/user1/second"]
observer = Observer()
patterns = ["/home/user1/first/first.log","/home/user1/second/second.log")]
for i in xrange(len(dir_name)):
event_handler = EventHandler(patterns = patterns[i])
observer.schedule(event_handler, dir_name[i], recursive=True)
observer.start()
try:
while True:
time.sleep(0.1)
except KeyboardInterrupt:
observer.stop()
上記のコードでは、複数のディレクトリ監視形式を実行し、各ファイルのイベント ハンドラーを作成しようとしました。それは私のために働いていません。ここに欠けているものはありますか?? これを行う方法は何ですか??
ありがとう。