gpt4 book ai didi

javascript - 获取目录文件更改时的 mtime

转载 作者:行者123 更新时间:2023-12-03 03:36:42 25 4
gpt4 key购买 nike

我正在尝试获取目录上的mtime。我不确定这是否是正确的方法,但是当目录中的文件发生更改时如何获取 mtime

这就是我目前正在做的事情:

let statTs = fs.statSync(cfgDir);

然后我会检查该时间与另一个目录或文件的时间来决定是否需要运行构建命令:

if (!statJs || (statTs && statJs && statTs.mtime > statJs.mtime)) {
cp.execSync(`${tscPath} -p "${configFile}"`);
}

如果我转储 statTsmtime:

console.log(statTs.mtime)

即使我修改目录中的文件,我也总是得到相同的时间。有没有办法获取文件更改时的时间?

我使用的是 Windows 机器,所以在不同的操作系统上这可能会有所不同......

最佳答案

我发现的最好的解决方案是全局所有文件并获取最新的更改时间,如下所示:

private getDirMtime(dirpath) {
let stat = fs.statSync(dirpath)
if(stat.isFile()){ return Promise.resolve(stat.mtime) }
return new Promise(resolve => {
let lastMod = new Date(1970, 0)
glob(path.join(dirpath, '**/*.*'), files => {
files.forEach(file => {
let stat = fs.statSync(file)
if(stat.isFile() && stat.mtime > lastMod) {
lastMod = stat.mtime
}
})
return resolve(lastMod)
})
})
}

关于javascript - 获取目录文件更改时的 mtime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45824485/

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