0

Mac OS X 系统启动程序launchd启用作业调度(类似于cron)。通过创建launchd代理,可以通过以下事件之一触发程序:

  • 时间间隔已过
  • 某个日历日期到了
  • 文件路径已被修改
  • 某物已被放置在某个目录(队列目录)中
  • 已安装卷

我以前依靠 launchd 来启动一组 Python 脚本来自动化 OS X 系统。但是,由于添加新脚本通常还需要安装新的 launchd 代理来启动它,所以我想将launchd排除在外。Python 程序应该等待并观察上述事件的发生,然后调度适当的例程。

是否有适合检测上述事件的 Python 模块?或者,作为一个更普遍的问题,我如何使用 Python(可能还有通过 AppScript 桥的 AppleScript)替换此设置中的launchd ?对不起,如果问题相当模糊。阅读建议也值得赞赏。

4

1 回答 1

1

对于文件系统监控问题,也许您正在寻找pyfsevents。根据这篇文章

当文件系统发生更改时,FSEvents API 会通知您的应用程序。您可以使用文件系统事件来监视目录的任何更改,例如创建、修改或删除包含的文件和目录。

于 2010-02-11T12:36:59.917 回答