Сторожевой таймер Python, при изменении определенных файлов создается только измененный каталог

Я работаю с сторожевым таймером python для стороннего проекта, и у меня возникла проблема, когда иногда, когда файл был создан/изменен, сторожевой таймер говорит только

INFO:root:Modified directory: /home/foo/bar

вместо того, что я ожидал, что-то вроде

INFO:root:Modified file: /home/foo/bar/.config

или (временный файл emacs)

INFO:root:Modified file: /home/foo/bar/.#config

В настоящее время я возился с LoggingEventHandler, а также пытаюсь создать его подкласс, чтобы посмотреть, смогу ли я обойти эту проблему. Почему, когда определенные файлы (кажется, скрытые файлы) заставляют сторожевой таймер сообщать, что был изменен только каталог, а не выдавать событие изменения файла?


person gaigepr    schedule 29.01.2014    source источник
comment
Возможно, файлы удаляются/заменяются, а не изменяются.   -  person larsks    schedule 30.01.2014


Ответы (1)


Текстовые редакторы обычно создают файл резервной копии и сохраняют новую копию, фактически не редактируя файл. Вместо этого вы получите события move и create. Плюс: delete для старого файла подкачки, если он существовал, и modify для каталога, так как в нем был создан новый файл. Поведение описано в README. Я предполагаю, что это то, что вы видите, поскольку вы упомянули временный файл emacs.

person gwohpq9    schedule 25.02.2014