2011-12-04 36 views
1

我想写了在C/Python中的项目要么 - 以下的Unix(开放SUSE): -生成事件/ C/Python的

1)报告/报警机制:wherin如果一些updatation有在特定的文件夹中完成,或在操作系统级别更改其他任何内容,然后会发出警报,或者应将信号发送到已执行的程序,然后进行相应处理。

我读信号()似乎是我的问题的解决方案,但我如何使用这个用户定义的信号来解决我的目的。请帮忙。有些资源会很好。

或者,如果有其他技术可用,请让我知道。

谢谢

+0

应该有一个'2)'点? – joaquin

+0

joaquin:[有**没有**点2](http://en.wikipedia.org/wiki/Bruces_sketch)。 –

+0

毫无疑问。 – hochl

回答

0

看起来像你的工作的工具是 pyinotify中 -

项目概述页面是在这里: https://github.com/seb-m/pyinotify/wiki

的网址代码就在这里,但它可以用Python的easy_install或pip安装: https://github.com/seb-m/pyinotify

它专为此设计:每当在linux系统中修改某些受监视的目录或文件时,在运行代码上调用函数。

== ==编辑

对不起,Imissed了“什么都在操作系统级别改变”的一部分 - 但也许这仅仅是广为单一的答案。然而,与Linux一起开发的用于通知系统级事件(如外设和文件系统连接/断开,CPU状态变化等)的波形图的技术是DBUS。

DBUS可以在C和Python中使用 - 我没有使用它,但是从KDE 3时代继承DCOP的想法 - DCOP曾经非常有用。你可以看到如何o使用DBUS这里的例子和instrucions:

+0

PyInotify仅适用于文件系统事件。 –

+0

对不起 - 错过了。 – jsbueno