【问题标题】:check (Windows) folder permissions using node js使用节点 js 检查(Windows)文件夹权限
【发布时间】:2015-10-16 01:31:13
【问题描述】:

我需要知道如何使用 NodeJs 在指定文件夹中找到写入权限。 (针对当前用户)。

我试过了

fs.access(path,fs.W_OK,function(err){}) 

fs.accessSync(path,fs.W_OK). 

但是,我面临一个 TypeError,“对象没有方法访问”。

我可以,

var stats = fs.statSync(path);

并获取特定文件夹的详细信息。有什么方法可以使用 stats 对象查找写入权限?

任何其他解决方案也是值得赞赏的。

提前致谢..

【问题讨论】:

标签: javascript node.js fs


【解决方案1】:

您可以检查返回对象的“模式”属性。访问权限与传统 Unix 访问权限相同,以 3 位为一组。

var mode = fs.statSync(path).mode;
var writePermissions = mode & 0x92; // 010010010

【讨论】:

  • 对我来说,mode & 0x92 为所有路径返回 146
  • @SELVA 您是否阅读了链接的重复问题? 144 表示所有三个访问类别(所有者、拥有组和世界)都允许写入权限。
  • 这里。我将尝试更清楚地解释我的问题。多个活动用户可用于我的计算机。比如说,我的用户名是 myuser,另一个是 user1。我可以使用我的用户名登录,可以访问此文件夹C:/users/user1,并且可以手动创建一个 .txt 文件。但是,如果我尝试编写,使用 fs.write(path,data,function(err){};) 它会返回错误。我找不到这个问题。
  • 我不知道 Windows 文件权限是如何通过 Node.js 表示的。整个 Node FileSystem API 直接以 UNIX/Linux 文件系统 API 为模型。
猜你喜欢
  • 2014-09-10
  • 2010-10-28
  • 1970-01-01
  • 1970-01-01
  • 2021-08-14
  • 2015-05-27
  • 2012-11-15
  • 1970-01-01
  • 2011-08-20
相关资源
最近更新 更多