【发布时间】:2010-09-15 23:33:33
【问题描述】:
我有一个日志文件正在被另一个进程写入,我想观察它的变化。每次发生更改时,我都想读取新数据以对其进行一些处理。
最好的方法是什么?我希望 PyWin32 库中有某种钩子。我找到了win32file.FindNextChangeNotification 函数,但不知道如何要求它观看特定文件。
如果有人做过这样的事情,我会非常感激听到如何...
[编辑]我应该提到我正在寻求一个不需要轮询的解决方案。
[编辑] 诅咒!似乎这不适用于映射的网络驱动器。我猜 Windows 不会像在本地磁盘上那样“听到”文件的任何更新。
【问题讨论】:
-
在 Linux 上可以使用
strace监控write调用此操作 -
@simao's answer 使用 python-watchdog。 Python-Watchdog 有很好的文档 --> 这里是 ["QuickStart"] 文档的链接,它提供了一个监视当前工作目录的最小代码示例。