Node os模块的介绍

469 阅读2分钟

这个模块提供了许多函数,你可以用来从底层操作系统和程序运行的计算机中检索信息,并与之互动。

有几个有用的属性告诉我们一些与处理文件有关的关键事情。

os.EOL 给出了行的分隔符序列。它在Linux和macOS上是 ,在Windows上是 。\n \r\n

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

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

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

你可以在nodejs.org/api/os.html… 上阅读它们。

现在让我们看看os 提供的主要方法。

os.arch()

返回标识底层架构的字符串,如arm,x64,arm64

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()

返回BELE ,取决于Node是用Big Endian还是Little Endian编译的。

os.freemem()

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

os.homedir()

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

例子。

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()

返回关于当前用户的信息