正如标题所述,我需要使用python
来观察更改目录(主要是文件添加)我偶然发现了一些解决方案here,但没有一个正常工作
1.一个解决方案是使用“fcntl”,我在我的系统上尝试了它但是它失败并出现错误“没有属性F_SETSIG”。搜索它没有任何用处
2.Python模块看门狗无法安装,因为我没有xcode,我不想下载(下载太大而且这么小的工作有很多不必要的东西)
已接受的解决方案是特定于Windows的,没有其他任何人在没有大包的情况下在osx上工作
所以最后我不想要任何涉及XCODE,PyQT,轮询,繁忙循环的解决方案(即每隔几秒检查一次DIR)
Applescripts默认支持这个,所以我认为python也应该没有任何大模块/包
我正在使用OS X 10.7.2和python 2.7.3
提前致谢
答案 0 :(得分:1)
您要使用的API是FSEvents API。 Python没有附带到该API的绑定,因此您需要自己创建绑定或使用MacFSEvents或python-watchdog等库。但是你真的应该只安装Xcode - 这些库需要编译C绑定,而Xcode是获得C编译器的最简单方法。
如果你真的想要避免使用Xcode,你可以使用ctypes module滚动自己的绑定,但这将是一个巨大的痛苦。
Applescripts默认支持这个,所以我认为python也应该没有任何大模块/包
运气好。可用的各种第三方库并不是那么大,它们只需要一个C编译器就可以工作。
答案 1 :(得分:0)
我现在在osx上使用看门狗。它很棒。安装xcode。或者只是编译器的命令行工具。
您可以在没有xcode的情况下安装gcc编译器:https://github.com/kennethreitz/osx-gcc-installer
如果你真的想要一个AppleScript方法,你可以使用python绑定appscript:http://appscript.sourceforge.net/py-appscript/index.html
我也使用它们,它们工作得很好。
所以最后我不想要任何涉及XCODE,PyQT,轮询的解决方案, 繁忙循环(即每隔几秒检查一次DIR)
基本上你说你根本不需要任何东西。任何解决方案都将使用一种形式的轮询。无论是系统触发还是app忙循环。您只需花一点时间安装编译器即可使用您选择的解决方案。