1
比較在OSX上的FSEvents,默認情況下,在觸發事件前收集超過1秒的FS事件(超時可配置)。Linux上的inotifywait是否允許在超時期限內收集事件?
這樣做的好處是可以將一系列文件系統更改收集到單個事件中(因此腳本運行得不會超出需要),但代價是延遲。
例如,在Vim中保存文件會修改許多臨時文件(它往往會刪除緩衝區文件,更新撤銷文件,並且除了文件本身外,還會創建並擦除名爲4193
的測試文件)。在使用此API的小工具(如我的分支fswatch)的OSX上,所有這些都可以合併爲一個「批處理事件」,而使用inotifywait -m
指定的所有事件都以單獨的行在流中傳遞,無需外部處理即可分組。
我很確定解決方案是隻是包裝它,並做這個處理,但我希望有一個隱藏的功能來指定一個像FSEvents允許的超時。
'inotify'不支持您描述的功能,您應該自己在應用程序層實現它。 – zeekvfu