如何将chmod与Node.js一起使用?
包fs
中有一个方法,应该这样做,但我不知道第二个参数需要什么。
fs.chmod(路径,模式,[回调])
异步chmod(2)。除了可能的异常之外,没有给完成回调的参数。
fs.chmodSync(路径,模式)
同步chmod(2)。
如果我做的话
fs.chmodSync('test', 0755);
没有任何反应(文件未更改为该模式)。
fs.chmodSync('test', '+x');
也不起作用。
我正在使用Windows机器btw。
答案 0 :(得分:52)
根据第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;
}
}
}
它采用八进制数字或字符串
e.g。
fs.chmodSync('test', 0755);
fs.chmodSync('test', '755');
它不适用于您的情况,因为文件模式仅存在于* nix机器上。
答案 1 :(得分:2)