fs.chmod() 和 fs.chmodSync() 方法中使用的 mode 参数是使用以下常量的逻辑或运算创建的数字型位掩码:
| 常量 | 八进制值 | 说明 | 
|---|---|---|
| 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 | 其他人可读 | 
| fs.constants.S_IWOTH | 0o2 | 其他人可写 | 
| fs.constants.S_IXOTH | 0o1 | 其他人可执行或搜索 | 
构造 mode 更简单的方法是使用三个八进制数字的序列( 例如 765)。
最左边的数字(示例中的 7)指定文件所有者的权限。
中间的数字(示例中的 6)指定群组的权限。
最右边的数字(示例中的 5)指定其他人的权限。
| 数字 | 说明 | 
|---|---|
| 7 | 可读、可写、可执行 | 
| 6 | 可读、可写 | 
| 5 | 可读、可执行 | 
| 4 | 只读 | 
| 3 | 可写、可执行 | 
| 2 | 只写 | 
| 1 | 只可执行 | 
| 0 | 没有权限 | 
例如,八进制值 0o765 表示:
- 所有者可以读取、写入和执行该文件。
- 群组可以读和写入该文件。
- 其他人可以读取和执行该文件。
当使用期望的文件模式的原始数字时,任何大于 0o777 的值都可能导致不支持一致的特定于平台的行为。
因此,诸如 S_ISVTX、S_ISGID 或 S_ISUID 之类的常量不会在 fs.constants 中公开。
注意事项:在 Windows 上,只能更改写入权限,并且不会实现群组、所有者或其他人的权限之间的区别。
 
                         
                                

