Node.js 系統(tǒng)

2022-02-26 10:31 更新
穩(wěn)定性: 4 - API 凍結(jié)

Node.js系統(tǒng)(OS)模塊提供一些與基本的操作系統(tǒng)有關(guān)的函數(shù)。

使用require('os')訪問(wèn)這個(gè)模塊,如下所示:

const os = require('os');

os.tmpdir()

用于返回操作系統(tǒng)的默認(rèn)臨時(shí)文件夾。

os.endianness()

用于返回CPU的字節(jié)序,可能的是"BE"或"LE"。

os.hostname()

用于返回操作系統(tǒng)的主機(jī)名。

os.type()

用于返回操作系統(tǒng)名。

os.platform()

用于返回操作系統(tǒng)名

os.arch()

用于返回操作系統(tǒng)CPU架構(gòu),可能的值有"x64"、"arm"和"ia32"。

os.release()

用于返回操作系統(tǒng)的發(fā)行版本

os.uptime()

用于返回操作系統(tǒng)運(yùn)行的時(shí)間,以秒為單位。

os.loadavg()

用于顯示原文其他翻譯糾錯(cuò)返回一個(gè)包含1、5、15分鐘平均負(fù)載的數(shù)組。

平均負(fù)載是系統(tǒng)的一個(gè)指標(biāo),操作系統(tǒng)計(jì)算,用一個(gè)很小的數(shù)字表示。理論上來(lái)說(shuō),平均負(fù)載最好比系統(tǒng)里的CPU低。

平均負(fù)載是一個(gè)非常UNIX-y的概念,windows系統(tǒng)沒(méi)有相同的概念。所以windows總是返回[0, 0, 0]

os.totalmem()

用于返回系統(tǒng)內(nèi)存總量,單位為字節(jié)。

os.freemem()

用于返回操作系統(tǒng)空閑內(nèi)存量,單位是字節(jié)。

os.cpus()

用于返回一個(gè)對(duì)象數(shù)組,包含所安裝的每個(gè)CPU/內(nèi)核的信息:型號(hào)、速度(單位 MHz)、時(shí)間(一個(gè)包含user、nice、sys、idle和irq所使用CPU/內(nèi)核毫秒數(shù)的對(duì)象)。

os.cpus的例子:

[ { model: 'Intel(R) Core(TM) i7 CPU         860  @ 2.80GHz',
    speed: 2926,
    times:
     { user: 252020,
       nice: 0,
       sys: 30340,
       idle: 1070356870,
       irq: 0 } },
  { model: 'Intel(R) Core(TM) i7 CPU         860  @ 2.80GHz',
    speed: 2926,
    times:
     { user: 306960,
       nice: 0,
       sys: 26980,
       idle: 1071569080,
       irq: 0 } },
  { model: 'Intel(R) Core(TM) i7 CPU         860  @ 2.80GHz',
    speed: 2926,
    times:
     { user: 248450,
       nice: 0,
       sys: 21750,
       idle: 1070919370,
       irq: 0 } },
  { model: 'Intel(R) Core(TM) i7 CPU         860  @ 2.80GHz',
    speed: 2926,
    times:
     { user: 256880,
       nice: 0,
       sys: 19430,
       idle: 1070905480,
       irq: 20 } },
  { model: 'Intel(R) Core(TM) i7 CPU         860  @ 2.80GHz',
    speed: 2926,
    times:
     { user: 511580,
       nice: 20,
       sys: 40900,
       idle: 1070842510,
       irq: 0 } },
  { model: 'Intel(R) Core(TM) i7 CPU         860  @ 2.80GHz',
    speed: 2926,
    times:
     { user: 291660,
       nice: 0,
       sys: 34360,
       idle: 1070888000,
       irq: 10 } },
  { model: 'Intel(R) Core(TM) i7 CPU         860  @ 2.80GHz',
    speed: 2926,
    times:
     { user: 308260,
       nice: 0,
       sys: 55410,
       idle: 1071129970,
       irq: 880 } },
  { model: 'Intel(R) Core(TM) i7 CPU         860  @ 2.80GHz',
    speed: 2926,
    times:
     { user: 266450,
       nice: 1480,
       sys: 34920,
       idle: 1072572010,
       irq: 30 } } ]

os.networkInterfaces()

獲得網(wǎng)絡(luò)接口列表的方法如下所示:

{ lo:
   [ { address: '127.0.0.1',
       netmask: '255.0.0.0',
       family: 'IPv4',
       mac: '00:00:00:00:00:00',
       internal: true },
     { address: '::1',
       netmask: 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff',
       family: 'IPv6',
       mac: '00:00:00:00:00:00',
       internal: true } ],
  eth0:
   [ { address: '192.168.1.108',
       netmask: '255.255.255.0',
       family: 'IPv4',
       mac: '01:02:03:0a:0b:0c',
       internal: false },
     { address: 'fe80::a00:27ff:fe4e:66a1',
       netmask: 'ffff:ffff:ffff:ffff::',
       family: 'IPv6',
       mac: '01:02:03:0a:0b:0c',
       internal: false } ] }

os.EOL

定義了操作系統(tǒng)的End-of-line的常量。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)