我如何在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机器上工作。
根据第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机器上。