拖尾 /sys/devices/platform/applesmc.768/light 不工作

拖尾 /sys/devices/platform/applesmc.768/light 不工作

曾几何时,我施展了这个贝咒,

# tail -f /sys/devices/platform/applesmc.768/light

它确实产生了,

(0,0)

我读到的文件是Macbook Pro的光传感器抽象文件。

不幸的是,当我向传感器(与相机相同的位置)发出一些光时,它没有更新值!

手动读取时它确实显示了变化,

# cat /sys/devices/platform/applesmc.768/light
(50,0)

任务是为了为什么?! 因为我想对值进行一些轮询并在其更改时收到通知。使用蟒蛇也是不起作用。

答案1

使用 watch around cat 或 while 循环代替:

watch cat /sys/devices/platform/applesmc.768/light

while sleep 0.5; do cat /sys/devices/platform/applesmc.768/light; done

该文件不会被附加新值,而是会被替换,因此为了重新读取值,您需要重新读取文件。因此 tail 将不起作用,因为它正在等待将更多行追加到文件中。

在 python 中,您可以尝试跳到打开文件的开头,但这可能只会让您再次重新读取旧值。但是,关闭并重新打开文件应该可以按照您的意愿进行。

相关内容