本文概述
- 操作系统
- 硬盘驱动器
在本文中, 你将学习如何访问Electron中有关硬件和操作系统的基本信息。
操作系统 为了获得有关操作系统的信息, 我们将使用os模块, 该模块可以使用以下命令加载:
var operativeSystemModule = require("os");
// Call any os method of os node.js here
获取网络接口信息
使用os.networkInterfaces方法获取有关网络设备的信息。
var os = require("os");
console.log(os.networkInterfaces());
你应该看到类似的输出:
文章图片
获取CPU信息
使用os.cpus方法检索处理器名称, 速度等名称。
var os = require("os");
os.cpus();
/*This method will return an arraywith the following structure (Note that the first item in the array has been stringified which is an object with the information)*/{"model":"Intel(R) Atom(TM) CPUZ3735F @ 1.33GHz", "speed":1333, "times":{"user":842156, "nice":0, "sys":576953, "idle":3697421, "irq":32656}}
获取操作系统临时文件路径
要写入临时文件, 你需要将它们保存在os的临时文件文件夹中, 不必担心以后再删除它们, 因此请使用tmpDir来获取os的临时文件文件夹。
var os = require("os");
os.tmpDir();
// change acording to your os and settings
获取操作系统架构
使用os.arch方法检索OS体系结构。
var os = require("os");
os.arch();
'x64', 'arm' and 'ia32'
获取内存量
从操作系统中检索总内存量(以字节为单位)。
var os = require("os");
var bytesAvailable = os.totalmem();
// returns number in bytes// 1 mb = 1048576
bytesconsole.log("Total memory available MB :" + (bytesAvailable/1048576)
);
要获取内存中可用(空闲)字节的数量, 请使用os.freemem方法。
var os = require("os");
var mbTotal = ((os.totalmem())/1048576);
var mbFree = ((os.freemem())/1048576);
console.log("There are "+mbFree+"mb free in the memory of "+mbTotal+"mb in total");
获取操作系统名称
你可以使用os.type方法检索操作系统名称, 并使用os.platform检索操作系统平台。
var os = require("os");
os.type();
// Linux, Darwin or Window_NTos.platform();
// 'darwin', 'freebsd', 'linux', 'sunos' or 'win32'
” os” 模块提供了一些与操作系统相关的基本实用工具功能, 你可以在此处阅读更多有用的方法来阅读node.js os模块的文档。
硬盘驱动器 要获取有关系统上硬盘驱动器的信息, 你将需要依赖第三方库。我们正在谈论驱动列表模块。该模块列出了所有主要操作系统中计算机中所有已连接的驱动器。
请注意, 此模块不需要管理员特权即可在任何受支持的操作系统中获取驱动器。它支持以下平台:
- 视窗。
- GNU / Linux发行版包括util-linux和udev。
- Mac OSX。
npm install drivelist
安装后, 你将需要带Javascript的drivelist模块。以下示例将在控制台中列出系统的所有驱动器:
const drivelist = require('drivelist');
drivelist.list((error, drives) =>
{if (error) {throw error;
}drives.forEach((drive) =>
{console.log(drive);
});
});
/** Console output Mac OS X[{device: '/dev/disk0', description: 'GUID_partition_scheme', size: 68719476736, mountpoints: [{path: '/'}], raw: '/dev/rdisk0', protected: false, system: true}]GNU/Linux[{device: '/dev/sda', description: 'WDC WD10JPVX-75J', size: 68719476736, mountpoints: [{path: '/'}], raw: '/dev/sda', protected: false, system: true}]Windows[{device: '\\\\.\\PHYSICALDRIVE0', description: 'WDC WD10JPVX-75JC3T0', size: 68719476736, mountpoints: [{path: 'C:'}], raw: '\\\\.\\PHYSICALDRIVE0', protected: false, system: true}]**/
【如何使用Electron框架获取操作系统和硬件信息】编码愉快!
推荐阅读
- 如何在Electron Framework中使用node.js(SSH2)创建sftp客户端
- 如何在Android中跟踪关键的应用参与度指标
- 如何在Android中使用Sweet Alert对话框
- 小布助手在面向中文短文本的实体链指比赛中的实践应用
- MyBatis框架UserMapperTest类的改进及核心配置文件
- MyBatis入门——核心对象的生命周期(SqlSessionFactoryBuilder,SqlSessionFactory, SqlSession和Mapper)
- Android_基于监听的事件处理机制
- Android Socket发送信息时闪退
- Android_存储访问框架SAF