2013-04-28 14 views
3

Мне нужно отслеживать (используя watchdog) один файл, а не весь каталог.Мониторинг одного файла

Каков наилучший способ избежать контроля всего каталога? Я полагаю this

class watchdog.events.PatternMatchingEventHandler(patterns=None, ignore_patterns=None, ignore_directories=False, case_sensitive=False)[source] 

может быть полезным, но как определить соответствующий шаблон для моего файла (C: /dir1/dir2/file.txt)?

+1

Извините за не по теме, но я могу» т сопротивляться моему любопытству. Почему кого-то называют себя Томом Крузом? :) –

+3

's/dictionary/directory/g' возможно? – Aya

ответ

2

Если вы хотите посмотреть путь к файлу, например C:/dict1/dict2/file.txt, я думаю, что это ваш шаблон прямо там. Нет никаких подстановочных знаков, поэтому их следует использовать как есть.

Как и в сторону, если Сторожевой дает вам неприятности, вы можете также рассмотреть вопрос о Pyinotify: https://github.com/seb-m/pyinotify

+0

Да, но 'C:/dict1/dict2/file.txt' как шаблон не работает ... и pyinotify работает только в Linux. –

+1

@TomCruise Возможно, вам придется поместить его в список, например. 'PatternMatchingEventHandler (patterns = ['C: /dict1/dict2/file.txt'], ...)' – Aya

+0

ДА! Это должен быть список! Большое спасибо! –

1

Путь предоставить образцы для PatternMatchingEventHandler является

from watchdog.events import PatternMatchingEventHandler 

class MyHandler(PatternMatchingEventHandler): 
    patterns = ["*.xml", "*.log", "*/test.txt"] # */test.txt to watch that specifi file 

 Смежные вопросы

  • Нет связанных вопросов^_^