订阅 /sys 中的文件

发布于 2024-11-09 20:58:16 字数 62 浏览 2 评论 0原文

Inotify 不会触发 /sys 中的文件更改 - 有哪些方法可以订阅其中的更改?

Inotify won't trigger on file-changes in /sys - what ways are there to subscribe to changes in there?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

黎夕旧梦 2024-11-16 20:58:17

更改 /sys 的事件通常由 udev 处理。因此,您可以添加 udevd 规则来处理事件或使用 libudev 来访问和监视 sysfs。我刚刚在这里找到了一些教程: http://www.signal11.us/oss/udev/

Events that change /sys are usually handled by udev. So, you can add udevd rules to handle the events or use libudev to access and monitor the sysfs. I just found some tutorial here: http://www.signal11.us/oss/udev/

°如果伤别离去 2024-11-16 20:58:17

使用 udev 和 udev 规则获取 /sys 中反映的更改(硬件热插拔、驱动程序加载、固件加载等)的通知。

请参阅http://hackaday.com/2009/09/18 /how-to-write-udev-rules/ 了解详细信息

Use udev and udev rules to get a notification to changes (hardware hotplug, drivers load, firmware load etc.) that are reflected in /sys.

See http://hackaday.com/2009/09/18/how-to-write-udev-rules/ for details

泪之魂 2024-11-16 20:58:17

要收到 /sys 文件或目录更改的通知,我使用 轮询对象来自Python。

import select

poll_objet = select.poll()
fd_object = file("/sys/what_you_want_to_survey", "r")
poll_objet.register(fd_object) # I use the select.POLLPRI | select.POLLERR combination in my code ;)
result = poll_object.poll()

其中 result 是被触摸的 (fd, event) 列表。

To be notified on a change on a /sys file or directory, I use the polling objects from python.

import select

poll_objet = select.poll()
fd_object = file("/sys/what_you_want_to_survey", "r")
poll_objet.register(fd_object) # I use the select.POLLPRI | select.POLLERR combination in my code ;)
result = poll_object.poll()

where result is a list of (fd, event) that were touched.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文