【问题标题】:Python watchdog, when certain files are modified only a directory modified is createdPython看门狗,当某些文件被修改时,只创建一个修改过的目录
【发布时间】:2014-01-29 21:17:14
【问题描述】:

我正在使用 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 并尝试将其子类化以查看是否可以解决此问题。为什么当某些文件(似乎是隐藏文件)导致看门狗只说目录被修改而不吐出文件修改事件?

【问题讨论】:

  • 文件可能被删除/替换而不是修改。

标签: python python-watchdog


【解决方案1】:

文本编辑器通常会创建一个备份文件并保存一个新副本,而不是实际编辑该文件。您将获得的事件是 movecreate。另外:delete 用于旧交换文件(如果存在),modify 用于目录,因为在其中创建了新文件。该行为在README 中注明。我认为这就是您所看到的,因为您提到了 emacs 临时文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多