fs.chmod(path, mode, callback)
| 版本 | 变化 | 
|---|---|
| v18.0.0 | 将无效回调传递给   | 
| v10.0.0 | 
  | 
| v7.6.0 | 
  | 
| v7.0.0 | 
  | 
| v0.1.30 | 添加于:v0.1.30  | 
参数
异步更改文件的权限。除了可能的异常之外,没有为完成回调提供任何参数。
有关更多详细信息,请参阅 POSIX   文档。chmod(2) 
import { chmod } from 'node:fs';
chmod('my_file.txt', 0o775, (err) => {
  if (err) throw err;
  console.log('The permissions for file "my_file.txt" have been changed!');
});
文件模式#
fs.chmod() 和 fs.chmodSync() 方法中使用的 mode 参数是使用以下常量的逻辑 OR 创建的数字位掩码:
| 持续的 | 八进制 | 说明 | 
|---|---|---|
fs.constants.S_IRUSR | 0o400 | 所有者阅读 | 
fs.constants.S_IWUSR | 0o200 | 楼主写的 | 
fs.constants.S_IXUSR | 0o100 | 按所有者执行/搜索 | 
fs.constants.S_IRGRP | 0o40 | 分组阅读 | 
fs.constants.S_IWGRP | 0o20 | 按组写 | 
fs.constants.S_IXGRP | 0o10 | 按组执行/搜索 | 
fs.constants.S_IROTH | 0o4 | other 读 | 
fs.constants.S_IWOTH | 0o2 | other 写的 | 
fs.constants.S_IXOTH | 0o1 | 由他人执行/搜索 | 
构造 mode 的一种更简单的方法是使用三个八进制数字的序列(例如 765 )。 left-most 数字(示例中为 7)指定文件所有者的权限。中间数字(示例中为6)指定组的权限。 right-most 数字(示例中为 5)指定其他人的权限。
| 数字 | 说明 | 
|---|---|
7 | 读、写和执行 | 
6 | 读和写 | 
5 | 读取并执行 | 
4 | 只读 | 
3 | 编写和执行 | 
2 | 只写 | 
1 | 只执行 | 
0 | 没有许可 | 
例如,八进制值 0o765 表示:
- 所有者可以读取、写入和执行文件。
 - 该组可以读取和写入文件。
 - 其他人可以读取并执行该文件。
 
在需要文件模式的情况下使用原始数字时,任何大于 0o777 的值都可能导致不支持一致工作的特定于平台的行为。因此,S_ISVTX、S_ISGID 或 S_ISUID 等常量不会在 fs.constants 中公开。
注意事项:在Windows上只能更改写权限,不区分组、所有者或其他权限。
相关用法
- Node.js fs.chmod()用法及代码示例
 - Node.js fs.chmodSync()用法及代码示例
 - Node.js fs.chownSync()用法及代码示例
 - Node.js fs.chown()用法及代码示例
 - Node.js fs.constants用法及代码示例
 - Node.js fs.copyFile()用法及代码示例
 - Node.js fs.closeSync()用法及代码示例
 - Node.js fs.copyFile(src, dest[, mode], callback)用法及代码示例
 - Node.js fs.createReadStream(path[, options])用法及代码示例
 - Node.js fs.createWriteStream()用法及代码示例
 - Node.js fs.copyFileSync()用法及代码示例
 - Node.js fs.close()用法及代码示例
 - Node.js fs.copyFileSync(src, dest[, mode])用法及代码示例
 - Node.js fs.createReadStream()用法及代码示例
 - Node.js fs.filehandle.datasync()用法及代码示例
 - Node.js fs.read()用法及代码示例
 - Node.js fs.Dirent.isFile()用法及代码示例
 - Node.js fs.Dir.closeSync()用法及代码示例
 - Node.js fs.fchmodSync()用法及代码示例
 - Node.js fs.symlink(target, path[, type], callback)用法及代码示例
 - Node.js fs.mkdir()用法及代码示例
 - Node.js fs.mkdirSync()用法及代码示例
 - Node.js fs.fdatasync()用法及代码示例
 - Node.js fs.Dirent.isFIFO()用法及代码示例
 - Node.js fs.writeSync()用法及代码示例
 
注:本文由纯净天空筛选整理自nodejs.org大神的英文原创作品 fs.chmod(path, mode, callback)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
