Nodejs OS模塊

ㅤㅤㅤ
ㅤㅤㅤ
ㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤ(樂觀的人在每個危機裏看到機會,悲觀的人在每個機會裏看見危機。——邱吉爾)
ㅤㅤㅤ
ㅤㅤㅤ
ㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤ在這裏插入圖片描述

Nodejs version v14.1.0

os 模塊提供了與操作系統相關的實用方法和屬性

  • 返回操作系統特定的行末標誌
/**
 * @method os.EOL
 * @return 返回操作系統特定的行末標誌
 */
const eol = os.EOL;
console.log(`eol = ${JSON.stringify(eol)}`); //eol = "\n"
  • 返回爲其編譯 Node.js 二進制文件的操作系統的 CPU 架構
/**
 * @method os.arch()
 * @return 返回爲其編譯 Node.js 二進制文件的操作系統的 CPU 架構
 * @description 可能的值有:'arm'、 'arm64'、 'ia32'、 'mips'、 'mipsel'、 'ppc'、 'ppc64'、 's390'、 's390x'、 'x32' 和 'x64'
 * @description 返回值和process.arch相同
 */
const arch = os.arch();
console.log(`arch = ${arch}`); //arch = x64
const processArch = process.arch;
console.log(`processArch = ${processArch}`); //processArch = x64
  • 錯誤碼、進程信號等常用的操作系統特定的常量
/**
 * @method os.constants
 * @return 錯誤碼、進程信號等常用的操作系統特定的常量
 * @description 更具體請查看nodejs官方進程信號列表
 * http://nodejs.cn/api/os.html#os_os_constants_1
 */
const osConsSign = os.constants.signals;
console.log(osConsSign);
  • 返回一個對象數組,其中包含有關每個邏輯 CPU 內核的信息
**
 * @method os.cpus()
 * @return 返回一個對象數組,其中包含有關每個邏輯 CPU 內核的信息
 */
const cpu = os.cpus();
console.log(`cpu = ${JSON.stringify(cpu)}`); //[{"model":"Intel(R) Core(TM) i5-10210U CPU @ 1.60GHz","speed":2177,"times".....
  • 返回一個字符串,該字符串標識爲其編譯 Node.js 二進制文件的 CPU 的字節序
/**
 * @method os.endianness()
 * @return 返回一個字符串,該字符串標識爲其編譯 Node.js 二進制文件的 CPU 的字節序
 * @description 可能的值有, 'BE' 用於大端字節序, 'LE' 用於小端字節序
 */
const endianness = os.endianness();
console.log(`endianness = ${endianness}`); //LE
  • 以整數的形式返回空閒的系統內存量(以字節爲單位)
/**
 * @method os.freemem()
 * @return 以整數的形式返回空閒的系統內存量(以字節爲單位)
 */
const freemem = os.freemem();
console.log(`freemem = ${freemem}`); //5685964800
  • 返回由 pid 指定的進程的調度優先級。 如果未提供 pid 或者爲 0,則返回當前進程的優先級
/**
 * @method os.getPriority([pid])
 * @return 返回由 pid 指定的進程的調度優先級。 如果未提供 pid 或者爲 0,則返回當前進程的優先級
 */
const getPriority = os.getPriority();
console.log(`getPriority = ${getPriority}`);  //0
  • 返回當前用戶的主目錄的字符串路徑
/**
 * @method os.homedir()
 * @return 返回當前用戶的主目錄的字符串路徑。
 * @description 
 * 在 POSIX 上,使用 $HOME 環境變量(如果有定義)。 否則,使用有效的 UID 來查找用戶的主目錄。
 * 在 Windows 上,使用 USERPROFILE 環境變量(如果有定義)。 否則,使用當前用戶的配置文件目錄的路徑
 */
const homeDIr = os.homedir();
console.log(`homeDIr = ${homeDIr}`); // home/zzw
  • 以字符串的形式返回操作系統的主機名
/**
 * @method os.hostname()
 * @return 以字符串的形式返回操作系統的主機名。
 */
const hostName = os.hostname();
console.log(`hostName = ${hostName}`); //zzw-Lenovo-Yoga-C740-14IML
  • 返回一個數組,包含 1、5 和 15 分鐘的平均負載
/**
 * @method os.loadavg()
 * @return 返回一個數組,包含 1、5 和 15 分鐘的平均負載
 * @description 
 * 平均負載是系統活動性的測量,由操作系統計算得出,並表現爲一個分數
 * 平均負載是 UNIX 特定的概念。 在 Windows 上,其返回值始終爲 [0, 0, 0]
 */
const loadavg = os.loadavg();
console.log(`loadavg = ${loadavg}`); //1.83740234375,1.431640625,1.09521484375
  • 返回一個對象,該對象包含已分配了網絡地址的網絡接口
/**
 * @method os.networkInterfaces()
 * @return 返回一個對象,該對象包含已分配了網絡地址的網絡接口
 * @description 返回的對象上的每個鍵都標識了一個網絡接口。 關聯的值是一個對象數組,每個對象描述了一個分配的網絡地址
 */
const networkInterfaces = os.networkInterfaces();
console.log(`networkInterfaces = ${JSON.stringify(networkInterfaces)}`); //{"lo":[{"address":"127.0.0.1","netmask":"255.0.0.0","family":"IPv4","mac":"00:00:00:00:00:00"......

  • 返回標識操作系統平臺的字符串
/**
 * @method os.platform()
 * @return 返回標識操作系統平臺的字符串
 * @description 可能的值有 'aix'、 'darwin'、 'freebsd'、 'linux'、 'openbsd'、 'sunos' 和 'win32'。返回的值等價於 process.platform
 */
const platform = os.platform();
console.log(`platform = ${platform}`); //linux
  • 以字符串的形式返回操作系統
/**
 * @method os.release()
 * @return 以字符串的形式返回操作系統
 * @description 在 POSIX 系統上,操作系統的發行版是通過調用 uname(3) 判斷的。 在 Windows 上, 則使用 GetVersionExW()
 */
const release = os.release();
console.log(`release = ${release}`); //5.4.0-050400rc1-generic
  • 以字符串的形式返回操作系統的默認臨時文件目錄
/**
 * @method os.tmpdir()
 * @return 以字符串的形式返回操作系統的默認臨時文件目錄
 */
const tmpdir = os.tmpdir();
console.log(`tmpdir = ${tmpdir}`); ///tmp
  • 以整數的形式返回系統的內存總量(以字節爲單位)
/**
 * @method os.totalmem()
 * @return 以整數的形式返回系統的內存總量(以字節爲單位)
 */
const totalmem = os.totalmem();
console.log(`totalmem = ${totalmem}`); //16481849344
  • 返回與 uname(3) 返回一樣的操作系統名字
/**
 * @method os.type()
 * @return 返回與 uname(3) 返回一樣的操作系統名字
 */
const type = os.type();
console.log(`type = ${type}`); //Linux
  • 返回系統的正常運行時間(以秒爲單位)
/**
 * @method os.uptime()
 * @return 返回系統的正常運行時間(以秒爲單位)
 */
const uptime = os.uptime();
console.log(`uptime = ${uptime}`); //8889
  • 返回關於當前有效用戶的信息
/**
 * @method os.userInfo([options])
 * @return 返回關於當前有效用戶的信息
 */
const userinfo = os.userInfo();
console.log(`userinfo = ${JSON.stringify(userinfo)}`); //{"uid":1000,"gid":1000,"username":"zzw","homedir":"/home/zzw","shell":"/bin/zsh"}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章