Tags标签 网战地图
当前位置: 主页 > 网页设计 > JavaScript >

Node.js API详解之 os模块用法实例分析

2020-05-30 16:39 [JavaScript] 来源于:网络整理
导读:这篇文章主要介绍了Node.js API详解之 os模块用法,结合实例形式分析了Node.js API中os模块基本功能、原理、用法及操作注意事项,需要的朋友可以参考下
这篇文章主要介绍了Node.js API详解之 os模块用法,结合实例形式分析了Node.js API中os模块基本功能、原理、用法及操作注意事项,需要的朋友可以参考下

本文实例讲述了Node.js API详解之 os模块用法。分享给大家供大家参考,具体如下:

os是Node的一个基础模块,提供了一些操作系统相关的属性接口。

通过 const os = require('os'); 的方式引用os模块,我们接着看下os都有哪些功能

说明:

一个字符串常量,定义操作系统相关的行末标志:POSIX 系统上值为\n,Windows下的值为\r\n

demo:

console.log('abc'+ os.EOL +'123');
//abc
//123

os.arch()

说明:

该方法返回一个字符串,来说明当前运行环境的CPU架构,
可能的值有: 'arm', 'arm64', 'ia32', 'mips', 'mipsel', 'ppc', 'ppc64', 's390', 's390x', 'x32', 'x64', 和 'x86'

demo:

console.log(os.arch());
//x64

os.constants

说明:

此常量是一个包含错误码,处理信号等系统常量的对象。具体描述可以查看:OS 常量

demo:

console.log(os.constants);
// { UV_UDP_REUSEADDR: 4,   //libuv 常量
//  errno:
//  { E2BIG: 7,
//   EACCES: 13,
//   EADDRINUSE: 48,
//   EADDRNOTAVAIL: 49,
//   EAFNOSUPPORT: 47,
//   EAGAIN: 35,
//   EALREADY: 37,
//   EBADF: 9,
//   EBADMSG: 94,
//   EBUSY: 16,
//   ECANCELED: 89,
//   ECHILD: 10,
//   ECONNABORTED: 53,
//   ECONNREFUSED: 61,
//   ECONNRESET: 54,
//   EDEADLK: 11,
//   EDESTADDRREQ: 39,
//   EDOM: 33,
//   EDQUOT: 69,
//   EEXIST: 17,
//   EFAULT: 14,
//   EFBIG: 27,
//   EHOSTUNREACH: 65,
//   EIDRM: 90,
//   EILSEQ: 92,
//   EINPROGRESS: 36,
//   EINTR: 4,
//   EINVAL: 22,
//   EIO: 5,
//   EISCONN: 56,
//   EISDIR: 21,
//   ELOOP: 62,
//   EMFILE: 24,
//   EMLINK: 31,
//   EMSGSIZE: 40,
//   EMULTIHOP: 95,
//   ENAMETOOLONG: 63,
//   ENETDOWN: 50,
//   ENETRESET: 52,
//   ENETUNREACH: 51,
//   ENFILE: 23,
//   ENOBUFS: 55,
//   ENODATA: 96,
//   ENODEV: 19,
//   ENOENT: 2,
//   ENOEXEC: 8,
//   ENOLCK: 77,
//   ENOLINK: 97,
//   ENOMEM: 12,
//   ENOMSG: 91,
//   ENOPROTOOPT: 42,
//   ENOSPC: 28,
//   ENOSR: 98,
//   ENOSTR: 99,
//   ENOSYS: 78,
//   ENOTCONN: 57,
//   ENOTDIR: 20,
//   ENOTEMPTY: 66,
//   ENOTSOCK: 38,
//   ENOTSUP: 45,
//   ENOTTY: 25,
//   ENXIO: 6,
//   EOPNOTSUPP: 102,
//   EOVERFLOW: 84,
//   EPERM: 1,
//   EPIPE: 32,
//   EPROTO: 100,
//   EPROTONOSUPPORT: 43,
//   EPROTOTYPE: 41,
//   ERANGE: 34,
//   EROFS: 30,
//   ESPIPE: 29,
//   ESRCH: 3,
//   ESTALE: 70,
//   ETIME: 101,
//   ETIMEDOUT: 60,
//   ETXTBSY: 26,
//   EWOULDBLOCK: 35,
//   EXDEV: 18 },
//  signals:
//  { SIGHUP: 1,
//   SIGINT: 2,
//   SIGQUIT: 3,
//   SIGILL: 4,
//   SIGTRAP: 5,
//   SIGABRT: 6,
//   SIGIOT: 6,
//   SIGBUS: 10,
//   SIGFPE: 8,
//   SIGKILL: 9,
//   SIGUSR1: 30,
//   SIGSEGV: 11,
//   SIGUSR2: 31,
//   SIGPIPE: 13,
//   SIGALRM: 14,
//   SIGTERM: 15,
//   SIGCHLD: 20,
//   SIGCONT: 19,
//   SIGSTOP: 17,
//   SIGTSTP: 18,
//   SIGTTIN: 21,
//   SIGTTOU: 22,
//   SIGURG: 16,
//   SIGXCPU: 24,
//   SIGXFSZ: 25,
//   SIGVTALRM: 26,
//   SIGPROF: 27,
//   SIGWINCH: 28,
//   SIGIO: 23,
//   SIGINFO: 29,
//   SIGSYS: 12 
//  } 
// }

os.cpus()

说明:

该方法返回一个对象数组, 包含每个逻辑 CPU 内核的信息。

demo:

console.log(os.cpus());
// [ { model: 'Intel(R) Core(TM) i5-5287U CPU @ 2.90GHz',
//   speed: 2900,
//   times: { 
//   user: 96756760, //CPU花费在用户模式下的毫秒时间数
//   nice: 0,  //CPU花费在良好模式下的毫秒时间数
//   sys: 80507720, //CPU花费在系统模式下的毫秒时间数
//   idle: 606147830, //CPU花费在空闲模式下的毫秒时间数
//   irq: 0  //CPU花费在中断请求模式下的毫秒时间数
//   } 
//  },
//  { model: 'Intel(R) Core(TM) i5-5287U CPU @ 2.90GHz',
//   speed: 2900,
//   times: { user: 43796970, nice: 0, sys: 37796280, idle: 701811920, irq: 0 } 
//  },
//  { model: 'Intel(R) Core(TM) i5-5287U CPU @ 2.90GHz',
//   speed: 2900,
//   times: { user: 94060830, nice: 0, sys: 68641950, idle: 620702410, irq: 0 } 
//  },
//  { model: 'Intel(R) Core(TM) i5-5287U CPU @ 2.90GHz',
//   speed: 2900,
//   times: { user: 45641410, nice: 0, sys: 39136540, idle: 698627210, irq: 0 } 
//  } ]

os.endianness()

说明:

该方法返回一个字符串,表明Node.js二进制编译环境的字节顺序,可能的值为:'BE'(Big-Endian) 大端模式,'LE'(Little-Endian) 小端模式
大端模式:是指数据的高字节保存在内存的低地址中,数据的低字节保存在内存的高地址中。
小端模式:是指数据的高字节保存在内存的高地址中,数据的低字节保存在内存的低地址中。
以 0x12345678 为例:

demo:

console.log(os.endianness());
//LE

os.freemem()

说明:

该方法以整数的形式返回空闲系统内存的字节数

demo:

console.log(os.freemem());
//7155720192 

os.homedir()

说明:

该方法以字符串的形式返回当前用户的home目录

demo:

console.log(os.homedir());
// /Users/xiaoqiang

os.hostname()

说明:

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

demo:

console.log(os.hostname());
//xiaoqiangMacBook-Pro.local

os.loadavg()

说明:

该方法返回一个数组,包含1, 5, 15分钟平均负载.

(编辑:李小强)

本文标签: Node.js, API, os模块
网友评论

栏目列表

推荐文章