MYV*_*MYV 3 javascript file-io fs node.js
我正在编写一个node.js程序,只要在特定目录中创建具有特定名称的文件,就需要执行某些操作.我可以通过重复调用fs.readdir直到我看到文件的名称来做到这一点,但我宁愿做一些更高效的事情.有谁知道这样做的方法?
查看fs.watch(和fs.watchFile作为后备)实现,但意识到它并不完美:
http://nodejs.org/api/fs.html#fs_fs_watch_filename_options_listener
注意事项#
fs.watch API在各个平台上并非100%一致,在某些情况下不可用.可用性#
此功能取决于底层操作系统,它提供了一种通知文件系统更改的方法.
Run Code Online (Sandbox Code Playgroud)On Linux systems, this uses inotify. On BSD systems (including OS X), this uses kqueue. On SunOS systems (including Solaris and SmartOS), this uses event ports. On Windows systems, this feature depends on ReadDirectoryChangesW.如果基础功能由于某种原因不可用,那么fs.watch将无法运行.例如,在网络文件系统(NFS,SMB等)上观看文件或目录通常不能可靠地工作或根本不工作.
您仍然可以使用fs.watchFile,它使用stat轮询,但速度较慢且可靠性较低.