Node os模块

Node.js的os模块提供了有用的功能来与基础系统进行交互

该模块提供了许多功能,可用于从底层操作系统和程序运行所在的计算机上检索信息,并与其进行交互。

const os = require('os')

有一些有用的属性可以告诉我们一些与处理文件有关的关键事项:

os.EOL给出行定界符序列。它是\n在Linux和macOS上,以及\r\n在Windows上。

当我说Linux和macOS时,我的意思是POSIX平台。为简单起见,我排除了Node可以运行的其他较不流行的操作系统。

os.constants.signals告诉我们与处理过程信号相关的所有常量,例如SIGHUP,SIGKILL等。

os.constants.errno设置错误报告的常量,例如EADDRINUSE,EOVERFLOW等。

您可以阅读所有内容https://nodejs.org/api/os.html#os_signal_constants

现在让我们看一下主要方法os提供:

os.arch()

返回标识基础架构的字符串,例如armx64arm64

os.cpus()

返回有关系统上可用CPU的信息。

例子:

[ { model: 'Intel(R) Core(TM)2 Duo CPU     P8600  @ 2.40GHz',
    speed: 2400,
    times:
     { user: 281685380,
       nice: 0,
       sys: 187986530,
       idle: 685833750,
       irq: 0 } },
  { model: 'Intel(R) Core(TM)2 Duo CPU     P8600  @ 2.40GHz',
    speed: 2400,
    times:
     { user: 282348700,
       nice: 0,
       sys: 161800480,
       idle: 703509470,
       irq: 0 } } ]

os.endianness()

返回BE或者LE取决于是否使用Node编译大端或小端

os.freemem()

返回代表系统中可用内存的字节数。

os.homedir()

返回路径到当前用户的主目录。

例子:

'/Users/flavio'

os.hostname()

返回主机名。

os.loadavg()

返回操作系统对平均负载进行的计算。

它仅在Linux和macOS上返回有意义的值。

例子:

[ 3.68798828125, 4.00244140625, 11.1181640625 ]

os.networkInterfaces()

返回系统上可用网络接口的详细信息。

例子:

{ lo0:
   [ { address: '127.0.0.1',
       netmask: '255.0.0.0',
       family: 'IPv4',
       mac: 'fe:82:00:00:00:00',
       internal: true },
     { address: '::1',
       netmask: 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff',
       family: 'IPv6',
       mac: 'fe:82:00:00:00:00',
       scopeid: 0,
       internal: true },
     { address: 'fe80::1',
       netmask: 'ffff:ffff:ffff:ffff::',
       family: 'IPv6',
       mac: 'fe:82:00:00:00:00',
       scopeid: 1,
       internal: true } ],
  en1:
   [ { address: 'fe82::9b:8282:d7e6:496e',
       netmask: 'ffff:ffff:ffff:ffff::',
       family: 'IPv6',
       mac: '06:00:00:02:0e:00',
       scopeid: 5,
       internal: false },
     { address: '192.168.1.38',
       netmask: '255.255.255.0',
       family: 'IPv4',
       mac: '06:00:00:02:0e:00',
       internal: false } ],
  utun0:
   [ { address: 'fe80::2513:72bc:f405:61d0',
       netmask: 'ffff:ffff:ffff:ffff::',
       family: 'IPv6',
       mac: 'fe:80:00:20:00:00',
       scopeid: 8,
       internal: false } ] }

os.platform()

返回为Node编译的平台:

  • darwin
  • freebsd
  • linux
  • openbsd
  • win32
  • …更多的

os.release()

返回标识操作系统发行版号的字符串

os.tmpdir()

返回指定的临时文件夹的路径。

os.totalmem()

返回表示系统中可用总内存的字节数。

os.type()

标识操作系统:

  • Linux
  • Darwin在macOS上
  • Windows_NT在Windows上

os.uptime()

返回自上次重新启动计算机以来计算机一直在运行的秒数。

os.userInfo()

返回有关当前用户的信息

免费下载我的Node.js手册


更多节点教程: