美文网首页
Node.js(四)操作系统模块os

Node.js(四)操作系统模块os

作者: 偶余杭 | 来源:发表于2019-03-02 20:31 被阅读0次

    Node.js的os模块是属于其核心模块之一,提供了操作相关的使用方法,引用方式如下:

    const os = require('os');
    

    这里只记录部分常用的api

    os.hostname()


    以字符串的形式返回操作系统的主机名

    os.platform()


    返回一个字符串, 指定Node.js编译时的操作系统平台

    os.type()


    返回一个字符串,表明操作系统的名字
    代码:

    const os = require('os');
    console.log(os.type())
    

    返回:


    os.type()

    os.homedir()


    以字符串的形式返回当前用户的home目录
    代码:

    const os = require('os');
    console.log(os.homedir())
    

    返回:


    os.homedir()

    os.freemen()


    以整数的形式回空闲系统内存 的字节数.

    os.totalmem()


    以整数的形式返回所有系统内存的字节数.
    代码:

    const os = require('os');
    const menory = os.freemem()/os.totalmem() *100
    console.log(`内存占用率${menory}%`);
    

    返回:


    内存占用率

    os.networkInterfaces()


    返回一个对象,包含只有被赋予网络地址的网络接口
    在返回对象的每个关键词都指明了一个网络接口.

    返回的值是一个对象数组, 每个都描述了赋予的网络地址.

    被赋予网络地址的对象包含的属性:

    • address <string> 被赋予的 IPv4 或 IPv6 地址
    • netmask <string> IPv4 或 IPv6 子网掩码
    • family <string> IPv4IPv6
    • mac <string> 网络接口的MAC地址
    • internal <boolean> 如果 网络接口是loopback或相似的远程不能用的接口时, 值为true,否则为false
    • scopeid <number> IPv6 数字领域识别码 (只有当 familyIPv6时可用)
    • cidr <string> 以 CIDR 表示法分配的带有路由前缀的 IPv4 或 IPv6 地址。如果 netmask 参数不可用,则该属性是 null

    os.cpus()


    返回一个对象数组, 包含每个逻辑 CPU 内核的信息
    下面的属性包含在每个对象中:

    • model <string>

    • speed <number> (兆赫兹为单位)

    • times <Object>

      • user <number> CPU花费在用户模式下的毫秒时间数.
      • nice <number> CPU花费在良好模式下的毫秒时间数.
      • sys <number> CPU花费在系统模式下的毫秒时间数.
      • idle <number> CPU花费在空闲模式下的毫秒时间数.
      • irq <number> CPU花费在中断请求模式下的毫秒时间数.
    [
      {
        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.userInfo([options])

    返回当前有效用户的信息
    options <Object>

    • encoding <string> 用于解释结果字符串的字符编码. 如果encoding 被设置为'buffer', username, shell, 和 homedir 的值将成为 Buffer的实例. (默认是: 'utf8')
      在 POSIX平台上, 这通常是password 文件的子集. 返回的对象包括 username, uid, gid, shell, 和 homedir. 在Windows系统上, uid 和 gid 域是 -1, and shell是 null
      代码:
    const os = require('os');
    console.log(os.userInfo())
    

    返回:


    os.userInfo

    相关文章

      网友评论

          本文标题:Node.js(四)操作系统模块os

          本文链接:https://www.haomeiwen.com/subject/icmyuqtx.html