来自 fs.Stats 类的 Node.js stats.uid 属性
stats.uid 属性是 fs.Stats 类的内置应用程序编程接口,用于获取文件所属用户的数字(数字/大整数)身份。
句法:
stats.uid;
返回值:它返回一个数字或 BigInt 值,表示拥有该文件的用户的身份。
以下示例说明了 Node.js 中 stats.uid 属性的使用:
示例 1:
// Node.js program to demonstrate the
// stats.uid property
// Accessing fs module
const fs = require('fs');
// Calling fs.Stats stats.uid
//for directory using stat
fs.stat('./', (err, stats) => {
if (err) throw err;
console.log("using stat: numeric "
+ "identity of the user is "
+ stats.uid);
});
//using lstat
fs.lstat('./', (err, stats) => {
if (err) throw err;
console.log("using lstat: numeric "
+ "identity of the user is "
+ stats.uid);
});
// For file
// Using stat
fs.stat('./filename.txt', (err, stats) => {
if (err) throw err;
console.log("using stat: numeric "
+ "identity of the user is "
+ stats.uid);
});
// Using lstat
fs.lstat('./filename.txt', (err, stats) => {
if (err) throw err;
console.log("using lstat: numeric identity"
+ " of the user is "+stats.uid);
});
输出:
using stat: numeric identity of the user is 9932440
using lstat: numeric identity of the user is 9932440
using stat: numeric identity of the user is 9932440
using lstat: numeric identity of the user is 9932440
示例 2:
// Node.js program to demonstrate the
// stats.uid property
// Accessing fs module
const fs = require('fs').promises;
// Calling fs.Stats stats.uid
(async() => {
const stats = await fs.stat('./filename.txt');
console.log("using stat synchronous: numeric "
+ "identity of the user is "+stats.uid);
})().catch(console.error)
输出:
(node:14456) ExperimentalWarning: The fs.promises API
is experimental
using stat synchronous: numeric identity of the user is 9932440
注意:以上程序将通过使用node filename.js
命令编译运行,并正确使用 file_path。此 API 将在 POSIX 系统中正常工作。在 WINDOWS 等其他系统中,它将返回 0。
参考: https://nodejs.org/api/fs.html#fs_stats_uid