将 inotifywait 输出限制为 n/sec

将 inotifywait 输出限制为 n/sec

我有这个 inotifywait 命令监视日志文件,一旦触发就会运行一些其他代码,需要 0.2 秒才能完成。当日志没有被大规模更新时,这种方法工作得很好,但是当有多个新条目时,代码就会不必要地一遍又一遍地重复。

正如标题所述,我想要实现的目标是将 inotify 触发器的数量限制为每秒最多 5 次(特别是在这种情况下,考虑到 0.2 秒的执行时间)。

我尝试在 inotify 文档中进行搜索,但似乎没有任何函数可以这样做,所以我想我只能在 Bash 本身中解决一些问题。

您建议如何解决这个问题?使用与 while 循环和计数器绑定的内部 $SECOND 是否是一个可行的选择?

谢谢

相关内容