gpt4 book ai didi

javascript - 监视目录并尽快处理完整的新文件

转载 作者:太空宇宙 更新时间:2023-11-04 11:20:27 24 4
gpt4 key购买 nike

我有一个目录,一些其他程序在其中写入 XML 文件,当它们完成时我必须处理这些文件。

到目前为止,我通过要求编写程序首先使用一个临时名称并仅在最后重命名 .xml" 中的文件来避免处理未完全写入的文件。我的代码如下所示:

var fs  = require("fs");
var handleFiles = function(){
fs.readdirSync(args.in).forEach(function(filename) {
if (filename.slice(-4)!=='.xml') return;
// handle XML file here
});
}
fs.watch(args.in, handleFiles);

但是我要支持的一些新程序无法用临时名称来写。

当文件完全以高效、可靠、跨浏览器(Windows 和 Linux)而不是基于超时的方式(即不每 10 毫秒测试一次重命名直到它工作)方式编写时,我如何确保我能够处理这些文件?

写入操作是一次性的,所以我想我想要的(对于 linux 和更重要的是对于 windows)是在有新文件未被写入锁定时得到通知。

最佳答案

在 Linux 上你可以使用 inotify设施。参见 inotify(7) .

也许使用 incrontab可能是值得的。

关于javascript - 监视目录并尽快处理完整的新文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18629922/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com