您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Node.JS:“ fs.watchFile”如何工作?

Node.JS:“ fs.watchFile”如何工作?

是的,cpedros是正确的,这似乎是重复的。我想我可以对此进一步阐明。

每个操作系统都有其自己的文件更改事件,该事件会被触发。在Linux上,它是inotify(以前是用于通知),在Mac上是fsevents,在Windows上是FileSy@R_404_2354@Watcher。我不确定底层代码是否可以处理每种情况,但这是一般的想法。

如果您只想在Linux上观看文件,建议使用node-inotify-plus- plus。如果要观看目录,请在节点移动中使用inotify-plus-plus 。我已经实现了它,并且它就像一个魅力。

如果您有兴趣,我可以发布一些代码。node-inotify-plus- plus背后的优点在于,它抽象了inotify的大部分功能,并提供了直观的API,用于侦听文件中的特定事件。

编辑:这不应该用来观看大量文件。在我的系统上,最大值为8192。可以使用此命令找到最大值cat /proc/sys/fs/inotify/max_user_watches。这可以用来仅监视目录中的更改,然后从那里找出单个文件。如果直接修改该目录下的文件,则将触发修改事件。

编辑:感谢@guiomie指出,Windows现已完全支持观看文件。我认为这是与v0.6.x版本一起发布的。

Node 2022/1/1 18:13:51 有605人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶