如何检查正在运行的 Node.js 进程对给定文件的权限(读/写/执行)?
我希望fs.Stats object http://nodejs.org/docs/latest/api/fs.html#fs_class_fs_stats有一些有关权限的信息,但我没有看到任何信息。是否有一些内置函数可以让我进行此类检查?例如:
var filename = '/path/to/some/file';
if (fs.canRead(filename)) // OK...
if (fs.canWrite(filename)) // OK...
if (fs.canExecute(filename)) // OK...
当然,我不必尝试在每种模式下打开文件并将错误处理为否定肯定,对吧?必须有一个更简单的方法...
我迟到了,但是,我正在寻找与您相同的原因并了解到这一点。
fs.access https://nodejs.org/api/fs.html#fs_fs_access_path_mode_callback就是你需要的。它可以从节点 v0.11.15 开始使用。
function canWrite(path, callback) {
fs.access(path, fs.W_OK, function(err) {
callback(null, !err);
});
}
canWrite('/some/file/or/folder', function(err, isWritable) {
console.log(isWritable); // true or false
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)