我如何在Node.js中使用chmod

如何使用chmod和Node.js?

在包fs有一个方法,应该这样做,但是我不知道第二个参数需要什么。

fs.chmod(path,模式,[callback])

asynchronouschmod(2)。 完成callback没有给出可能的exception之外的其他参数。

fs.chmodSync(path,模式)

同步chmod(2)。

(来自Node.js文档 )

如果我做了类似的事情

 fs.chmodSync('test', 0755); 

没有任何事情发生(文件没有改变到该模式)。

 fs.chmodSync('test', '+x'); 

也不起作用。

我在一台Windows机器上工作。

       

网上收集的解决方案 "我如何在Node.js中使用chmod"

根据第508行的源代码/lib/fs.js

 fs.chmodSync = function(path, mode) { return binding.chmod(pathModule._makeLong(path), modeNum(mode)); }; 

和203行:

 function modeNum(m, def) { switch (typeof m) { case 'number': return m; case 'string': return parseInt(m, 8); default: if (def) { return modeNum(def); } else { return undefined; } } } 

它可以是一个八进制数字或一个string

例如

 fs.chmodSync('test', 0755); fs.chmodSync('test', '755'); 

它不起作用,因为文件模式只存在于* nix机器上。