Node.js操作系统OS模块用法分析


Posted in Javascript onJanuary 04, 2019

本文实例讲述了Node.js操作系统OS模块用法。分享给大家供大家参考,具体如下:

Node.js os 模块提供了一些基本的系统操作函数。可以通过以下方式引入该模块(不过最新版本的node.js已经默认引入了该模块了):

var os = require("os");

hostname()
返回操作系统的默认临时文件夹。

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

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

freemem()
返回操作系统空闲内存量,单位是字节

totalmem()
返回系统内存总量,单位为字节

cpus()
返回一个对象数组,包含所安装的每个 CPU/内核的信息:型号、速度(单位 MHz)、时间(一个包含 user、nice、sys、idle 和 irq 所使用 CPU/内核毫秒数的对象)。IRQ全称为Interrupt Request,即是“中断请求”的意思

type()
返回操作系统类型,例如 ‘Windows_NT'、'Linux'

release()
返回操作系统的发行版本。

networkInterfaces();
获得网络接口列表,包括地址、掩码、协议族、mac地址、是否是内部环回地址

homedir()
返回操作系统的家目录(或称库目录)。

userInfo()
返回当前用户的信息,包括组Id、用户Id、用户名、家目录、脚本地址

arch()
返回操作系统 CPU 架构,可能的值有 “x64”、”arm” 和 “ia32”。

platform()
返回操作系统类型,例如 ‘Win32'、'linux'

tmpdir()
返回操作系统的默认临时文件夹。

tmpDir()
返回操作系统的默认临时文件夹。

EOL
返回操作系统的行结束符

endianness()
返回 CPU 的字节序,可能的是 “BE” 或 “LE”。即大端或小端

os.hostname();
//输出 chenjia2014-PC
os.loadavg();
//输出 [ 0, 0, 0 ]
os.uptime();
//输出 7255.5505673
os.freemem();
//输出 3853164544
os.totalmem();
//输出 6407995392
os.cpus();
/*
输出
 [ { model: 'Intel(R) Pentium(R) CPU G2030 @ 3.00GHz',
   speed: 2993,
   times: { user: 1150850, nice: 0, sys: 242799, idle: 5946882, irq: 22479 } },
   { model: 'Intel(R) Pentium(R) CPU G2030 @ 3.00GHz',
   speed: 2993,
   times: { user: 1103909, nice: 0, sys: 198620, idle: 6037628, irq: 3057} ]
*/
os.type();
//输出 'Windows_NT'
os.release();
//输出 '6.1.7601'
os.networkInterfaces();
/*
输出
{ '本地连接':
  [ { address: '192.168.1.102',
    netmask: '255.255.255.0',
    family: 'IPv4',
    mac: 'd8:50:e6:c2:bc:47',
    internal:false} ],
 'VirtualBox Host-Only Network':
   [ { address: '169.254.62.210',
     netmask: '255.255.0.0',
     family: 'IPv4',
     mac: '0a:00:27:00:00:14
     internal: false } ],
 'Loopback Pseudo-Interface 1'
   [ { address: '::1',
     netmask: 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff',
     family: 'IPv6',
     mac: '00:00:00:00:00:00',
     scopeid: 0,
     internal: true },
    { address: '127.0.0.1',
     netmask: '255.0.0.0',
     family: 'IPv4',
     mac: '00:00:00:00:00:00',
     internal: true } ],
  'Teredo Tunneling Pseudo-Interface':
   [ { address: '2001:0:d362:
     netmask: 'ffff:ffff:ff
     family: 'IPv6',
     mac: '00:00:00:00:00:0
     scopeid: 0,
     internal: false },
    { address: 'fe80::189d:3
     netmask: 'ffff:ffff:ff
     family: 'IPv6',
     mac: '00:00:00:00:00:0
     scopeid: 12,
     internal: false } ] }
*/
os.homedir();
//输出 'C:\\Users\\chenjia2014'
os.userInfo();
/*
输出
{ uid: -1,
 gid: -1,
 username: 'chenjia2014',
 homedir: 'C:\\Users\\chenjia2014',
 shell: null }
*/
os.arch();
//输出 'x64'
os.platform();
//输出 'win32'
os.tmpdir();
//输出 'C:\\Users\\CHENJI~1\\AppData\\Local\\Temp'
os.tmpDir();
//输出 'C:\\Users\\CHENJI~1\\AppData\\Local\\Temp'
os.EOL;
//输出 '\r\n'
os.endianness();
//输出 'LE'

希望本文所述对大家nodejs程序设计有所帮助。

Javascript 相关文章推荐
javascript concat数组累加 示例
Sep 03 Javascript
document.documentElement和document.body区别介绍
Sep 16 Javascript
js/html光标定位的实现代码
Sep 23 Javascript
jquery 中的each()跳出循环的语句
May 23 Javascript
JavaScript中判断整字类型最简洁的实现方法
Nov 08 Javascript
JQuery页面地址处理插件jqURL详解
May 03 Javascript
20分钟成功编写bootstrap响应式页面 就这么简单
May 12 Javascript
JavaScript的this关键字的理解
Jun 18 Javascript
canvas知识总结
Jan 25 Javascript
简单了解three.js 着色器材质
Aug 03 Javascript
在antd中setFieldsValue和defaultVal的用法
Oct 29 Javascript
如何基于viewport vm适配移动端页面
Nov 13 Javascript
Node.js console控制台简单用法分析
Jan 04 #Javascript
Node.js JSON模块用法实例分析
Jan 04 #Javascript
使用VUE+iView+.Net Core上传图片的方法示例
Jan 04 #Javascript
Node.js assert断言原理与用法分析
Jan 04 #Javascript
如何为vuex实现带参数的 getter和state.commit
Jan 04 #Javascript
原生javascript实现连连看游戏
Jan 03 #Javascript
JavaScript键盘事件常见用法实例分析
Jan 03 #Javascript
You might like
搜索和替换文件或目录的一个好类--很实用
2006/10/09 PHP
PHP伪静态Rewrite设置之APACHE篇
2014/07/30 PHP
学习php设计模式 php实现享元模式(flyweight)
2015/12/07 PHP
PHP文件上传之多文件上传的实现思路
2016/01/27 PHP
php 多继承的几种常见实现方法示例
2019/11/18 PHP
jquery 输入框数字限制插件
2009/11/10 Javascript
SharePoint 客户端对象模型 (一) ECMA Script
2011/05/22 Javascript
jquery select多选框的左右移动 具体实现代码
2013/07/03 Javascript
javascript作用域问题实例分析
2015/07/13 Javascript
js跨浏览器的事件侦听器和事件对象的使用方法
2015/12/17 Javascript
easyUI实现类似搜索框关键词自动提示功能示例代码
2016/12/27 Javascript
vue loadmore组件上拉加载更多功能示例代码
2017/07/19 Javascript
Angular CLI 安装和使用教程
2017/09/13 Javascript
Vue 让元素抖动/摆动起来的实现代码
2018/05/31 Javascript
解决vue 中 echart 在子组件中只显示一次的问题
2018/08/07 Javascript
jsonp跨域及实现百度首页联想功能的方法
2018/08/30 Javascript
JavaScript事件冒泡机制原理实例解析
2020/01/14 Javascript
Vue中的nextTick作用和几个简单的使用场景
2021/01/25 Vue.js
python超简单解决约瑟夫环问题
2015/05/12 Python
详解Python的collections模块中的deque双端队列结构
2016/07/07 Python
PyChar学习教程之自定义文件与代码模板详解
2017/07/17 Python
使用python实现快速搭建简易的FTP服务器
2018/09/12 Python
python url 参数修改方法
2018/12/26 Python
PYTHON如何读取和写入EXCEL里面的数据
2019/10/28 Python
Python基于codecs模块实现文件读写案例解析
2020/05/11 Python
Python 实现 T00ls 自动签到脚本代码(邮件+钉钉通知)
2020/07/06 Python
深入了解Python装饰器的高级用法
2020/08/13 Python
如何真正的了解python装饰器
2020/08/14 Python
三星印度官网:Samsung印度
2019/08/03 全球购物
Paper Cape官网:美国婴儿和儿童服装品牌
2019/11/02 全球购物
华三通信H3C面试题
2015/05/15 面试题
超市营业员求职简历的自我评价
2013/10/17 职场文书
大学学雷锋活动总结
2014/06/26 职场文书
新疆民族团结演讲稿
2014/08/27 职场文书
CSS3通过var()和calc()函数实现动画特效
2021/03/30 HTML / CSS
vue-cropper组件实现图片切割上传
2021/05/27 Vue.js