Macintosh
拖尾 /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)
問題是為什麼?! 因為我想對值進行一些輪詢並在它改變時得到通知。使用python 也不起作用。
使用 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 中,您可以嘗試跳到打開文件的開頭,但這可能只會讓您再次重新讀取舊值。但是,關閉和重新打開文件應該可以按您的意願工作。