如何在Node.js中使用chmod?
包中有一个方法fs,应该这样做,但我不知道第二个参数需要什么.
fs.chmod(路径,模式,[回调])
异步chmod(2).除了可能的异常之外,没有给完成回调的参数.
fs.chmodSync(路径,模式)
同步chmod(2).
(来自Node.js文档)
如果我做的事情
fs.chmodSync('test', 0755);
Run Code Online (Sandbox Code Playgroud)
没有任何反应(文件未更改为该模式).
fs.chmodSync('test', '+x');
Run Code Online (Sandbox Code Playgroud)
也不起作用.
我正在研究一台Windows机器.
qia*_*iao 53
根据/lib/fs.js508号线的源代码
fs.chmodSync = function(path, mode) {
return binding.chmod(pathModule._makeLong(path), modeNum(mode));
};
Run Code Online (Sandbox Code Playgroud)
和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;
}
}
}
Run Code Online (Sandbox Code Playgroud)
它需要一个八进制数字或一个字符串
例如
fs.chmodSync('test', 0755);
fs.chmodSync('test', '755');
Run Code Online (Sandbox Code Playgroud)
它不适用于您的情况,因为文件模式仅存在于*nix机器上.
小智 13
指定 Octal 的正确方法如下:
fs.chmodSync('test', 0o755);
Run Code Online (Sandbox Code Playgroud)
请参阅此处的文件模式。
| 归档时间: |
|
| 查看次数: |
35189 次 |
| 最近记录: |