📜  Node.js | os.userInfo() 方法

📅  最后修改于: 2022-05-13 01:56:54.697000             🧑  作者: Mango

Node.js | os.userInfo() 方法

os.userInfo() 方法是 os 模块内置的应用程序编程接口,用于获取当前有效用户的信息。

句法:

os.userInfo( options )

参数:此方法接受单个参数选项,这是可选参数。它指定要传递的进程选项,并返回一个包含编码作为参数的对象。

  • encoding:指定返回数据的字符编码。如果它设置为'buffer',那么用户名、shell、homedir 值将是缓冲区实例。默认值为“utf8”。

返回值:返回一个对象,指定当前有效用户的信息,包含用户名、uid、gid、shell、homedir等值。

注意:在 POSIX 平台上,这通常是密码文件的子集,包含用户名、uid、gid、shell 和 homedir。 Windows shell 设置为 null 并且 uid、gid 为 -1。

下面的示例说明了 Node.js 中 os.userInfo() 的使用:

示例 1:

Javascript
// Node.js program to demonstrate the  
// os.userInfo() Method
 
// Allocating os module
const os = require('os');
 
// Printing os.userInfo() values
try {
 
    // Printing user information
    console.log(os.userInfo());
} catch (err) {
   
    // Printing if any exception occurs
    console.log(": error occurred" + err);
}


Javascript
// Node.js program to demonstrate the  
// os.userInfo() Method
 
// Allocating os module
const os = require('os');
 
// Printing os.userInfo()
try{
 
    // Setting options for os.userInfo()
    // method
    var options = {
        encoding: 'buffer'
    };
 
    // Printing user information
    console.log(os.userInfo(options));
} catch(err){
 
    // Printing exception if any
    console.log(": error occurred" + err);
}


输出:

{ uid: -1,
  gid: -1,
  username: 'gekcho',
  homedir: 'C:\\Users\\gekcho',
  shell: null }

示例 2:

Javascript

// Node.js program to demonstrate the  
// os.userInfo() Method
 
// Allocating os module
const os = require('os');
 
// Printing os.userInfo()
try{
 
    // Setting options for os.userInfo()
    // method
    var options = {
        encoding: 'buffer'
    };
 
    // Printing user information
    console.log(os.userInfo(options));
} catch(err){
 
    // Printing exception if any
    console.log(": error occurred" + err);
}

输出:

{ uid: -1,
  gid: -1,
  username: ,
  homedir: ,
  shell: null }

注意:上面的程序将使用 node filename.js 命令编译和运行。

参考: https://nodejs.org/api/os.html#os_os_userinfo_options