方法和属性


os.EOL

一个定义了操作系统相应的行尾(End-of-line)标识的常量。

os.type()

返回操作系统名称。比如 Linux 中返回 'Linux',OS X 中返回 'Darwin',Windows 中返回 'Windows_NT'

os.release()

返回操作系统版本。

os.platform()

返回操作系统平台。可能的值有 'darwin''freebsd''linux''sunos''win32'。返回 process.platform 的值。

os.cpus()

返回一个对象数组,包含所安装的每个 CPU/内核的信息:型号、速度(单位 MHz)、时间(一个包含 user、nice、sys、idle 和 irq 所使用 CPU/内核毫秒数的对象)。

os.cpus 的示例:

  1. [{
  2. model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
  3. speed: 2926,
  4. times: {
  5. user: 252020,
  6. nice: 0,
  7. sys: 30340,
  8. idle: 1070356870,
  9. irq: 0
  10. }
  11. },
  12. {
  13. model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
  14. speed: 2926,
  15. times: {
  16. user: 306960,
  17. nice: 0,
  18. sys: 26980,
  19. idle: 1071569080,
  20. irq: 0
  21. }
  22. },
  23. {
  24. model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
  25. speed: 2926,
  26. times: {
  27. user: 248450,
  28. nice: 0,
  29. sys: 21750,
  30. idle: 1070919370,
  31. irq: 0
  32. }
  33. },
  34. {
  35. model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
  36. speed: 2926,
  37. times: {
  38. user: 256880,
  39. nice: 0,
  40. sys: 19430,
  41. idle: 1070905480,
  42. irq: 20
  43. }
  44. },
  45. {
  46. model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
  47. speed: 2926,
  48. times: {
  49. user: 511580,
  50. nice: 20,
  51. sys: 40900,
  52. idle: 1070842510,
  53. irq: 0
  54. }
  55. },
  56. {
  57. model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
  58. speed: 2926,
  59. times: {
  60. user: 291660,
  61. nice: 0,
  62. sys: 34360,
  63. idle: 1070888000,
  64. irq: 10
  65. }
  66. },
  67. {
  68. model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
  69. speed: 2926,
  70. times: {
  71. user: 308260,
  72. nice: 0,
  73. sys: 55410,
  74. idle: 1071129970,
  75. irq: 880
  76. }
  77. },
  78. {
  79. model: 'Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz',
  80. speed: 2926,
  81. times: {
  82. user: 266450,
  83. nice: 1480,
  84. sys: 34920,
  85. idle: 1072572010,
  86. irq: 30
  87. }
  88. }]

os.arch()

返回操作系统的 CPU 架构。可能的值有 'x64''arm''ia32'。返回 process.arch 的值。

os.endianness()

返回 CPU 的字节序。可能值有大端的 BE 和小端的 LE

os.loadavg()

返回一个包含 1、5、15 分钟平均负载的数组。

平均负载是一个系统活跃度指标,它由操作系统计算并表示为一个小数。根据经验,平均负载最好应小于系统逻辑 CPU 的数量。

平均负载是一个非常 UNIX-y 的概念;在 Windows 平台上没有真正的等价物。这就是为什么这个函数在 Windows 上始终返回 [0,0,0] 的原因。

os.totalmem()

返回系统内存总量,以字节为单位。

os.freemem()

返回可用的系统内存量,以字节为单位。

os.uptime()

返回操作系统的运行时间,以秒为单位。

os.networkInterfaces()

获取网络接口列表:

  1. {
  2. lo: [{
  3. address: '127.0.0.1',
  4. netmask: '255.0.0.0',
  5. family: 'IPv4',
  6. mac: '00:00:00:00:00:00',
  7. internal: true
  8. },
  9. {
  10. address: '::1',
  11. netmask: 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff',
  12. family: 'IPv6',
  13. mac: '00:00:00:00:00:00',
  14. internal: true
  15. }],
  16. eth0: [{
  17. address: '192.168.1.108',
  18. netmask: '255.255.255.0',
  19. family: 'IPv4',
  20. mac: '01:02:03:0a:0b:0c',
  21. internal: false
  22. },
  23. {
  24. address: 'fe80::a00:27ff:fe4e:66a1',
  25. netmask: 'ffff:ffff:ffff:ffff::',
  26. family: 'IPv6',
  27. mac: '01:02:03:0a:0b:0c',
  28. internal: false
  29. }]
  30. }

需要注意的是,由于底层的实现,这里只会返回已分配地址的网络接口。

os.hostname()

返回操作系统的主机名。

os.homedir()

返回当前用户的主目录。

os.tmpdir()

返回操作系统默认的临时文件目录。