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)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。