Skip to content

os 操作系统模块

os 操作系统模块

os 模块是 Node.js 提供的一个内置模块,用于提供与操作系统相关的基本信息和操作。它包含了多个方法和属性,可以用于获取系统的内存、CPU、网络、路径等信息,非常适合用来编写与系统状态和资源相关的工具或诊断程序。

要使用 os 模块,只需要引入:

javascript
const os = require('os');

获取内存相关信息

获取系统剩余内存

使用 os.freemem() 方法可以获取系统剩余内存(单位:字节)。返回值为系统当前空闲的内存量。

  • 用法:

    javascript
    const os = require('os');
    
    const freeMemory = os.freemem();
    console.log(`系统剩余内存:${freeMemory} 字节`);

获取系统总内存

使用 os.totalmem() 方法可以获取系统总内存(单位:字节)。返回值为系统的物理内存总量。

  • 用法:

    javascript
    const os = require('os');
    
    const totalMemory = os.totalmem();
    console.log(`系统总内存:${totalMemory} 字节`);

获取网络相关信息

os 模块提供了一个 os.networkInterfaces() 方法,用于获取系统的网络接口信息,返回一个对象,包含所有网络接口的详细信息。

  • 用法:

    javascript
    const os = require('os');
    
    const networkInterfaces = os.networkInterfaces();
    console.log(networkInterfaces);
  • 返回值:networkInterfaces() 返回一个对象,每个属性代表一个网络接口,属性值是一个数组,包含该接口的 IP 地址、子网掩码、MAC 地址等信息。例如:

    javascript
    {
      eth0: [
        {
          address: '192.168.0.101',
          netmask: '255.255.255.0',
          family: 'IPv4',
          mac: '00:1a:2b:3c:4d:5e',
          internal: false
        },
        {
          address: 'fe80::1234:5678:9abc:def0',
          netmask: 'ffff::',
          family: 'IPv6',
          internal: false
        }
      ]
    }

获取系统相关目录

获取用户家目录

使用 os.homedir() 方法可以获取当前用户的家目录路径。

  • 用法:

    javascript
    const os = require('os');
    
    const homeDir = os.homedir();
    console.log(`用户家目录:${homeDir}`);
    • 返回值为当前用户的家目录路径,例如 /home/userC:\Users\user

获取临时文件目录

使用 os.tmpdir() 方法可以获取操作系统的临时文件夹路径。

  • 用法:

    javascript
    const os = require('os');
    
    const tempDir = os.tmpdir();
    console.log(`临时文件目录:${tempDir}`);
    • 返回值为操作系统的临时文件夹路径,例如 /tmp(Linux/Unix)或 C:\Users\user\AppData\Local\Temp(Windows)。

获取系统相关信息

获取操作系统平台

使用 os.platform() 方法可以获取操作系统的平台信息,如 Linux、Darwin(macOS)、Windows 等。

  • 用法:

    javascript
    const os = require('os');
    
    const platform = os.platform();
    console.log(`操作系统平台:${platform}`);
    • 返回值为操作系统平台的字符串,例如:
      • 'linux':Linux 系统
      • 'darwin':macOS 系统
      • 'win32':Windows 系统

获取操作系统的架构

使用 os.arch() 方法可以获取操作系统的架构信息,通常返回 'x64''ia32'

  • 用法:

    javascript
    const os = require('os');
    
    const architecture = os.arch();
    console.log(`操作系统架构:${architecture}`);
    • 返回值为操作系统架构的字符串,例如:
      • 'x64':64 位系统
      • 'ia32':32 位系统

获取操作系统的发布版本

使用 os.release() 方法可以获取操作系统的发布版本。

  • 用法:

    javascript
    const os = require('os');
    
    const release = os.release();
    console.log(`操作系统版本:${release}`);
    • 返回值为操作系统的版本号,例如 '5.10.0'

获取系统的主机名

使用 os.hostname() 方法可以获取操作系统的主机名(即计算机名称)。

  • 用法:

    javascript
    const os = require('os');
    
    const hostname = os.hostname();
    console.log(`主机名:${hostname}`);
    • 返回值为系统的主机名,例如 'my-computer'

os 模块常用属性

除了方法外,os 模块还提供了一些常用的常量和属性:

os.EOL

os.EOL 是操作系统的换行符,表示当前系统的行结束符(例如:Linux 使用 \n,Windows 使用 \r\n)。

  • 用法:

    javascript
    const os = require('os');
    
    console.log(`当前系统的行结束符:${os.EOL}`);

os.uptime()

os.uptime() 返回系统运行的时间,单位为秒。它可以用来获取系统自上次启动以来的运行时间。

  • 用法:

    javascript
    const os = require('os');
    
    const uptime = os.uptime();
    console.log(`系统已运行:${uptime} 秒`);

os.cpus()

os.cpus() 返回一个对象数组,每个对象包含一个 CPU 核心的详细信息,包括模型、速度等。

  • 用法:

    javascript
    const os = require('os');
    
    const cpus = os.cpus();
    console.log(cpus);
    • 返回值类似于:
    javascript
    [
      {
        model: 'Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz',
        speed: 1900,
        times: { user: 100, nice: 0, sys: 200, idle: 400, irq: 0 }
      },
      // 更多的 CPU 核心信息
    ]

os.endianness()

os.endianness() 返回系统字节序。常见的返回值是 'BE'(大端)或 'LE'(小端)。

  • 用法:

    javascript
    const os = require('os');
    
    const endianness = os.endianness();
    console.log(`系统字节序:${endianness}`);
编程洪同学服务平台是一个广泛收集编程相关内容和资源,旨在满足编程爱好者和专业开发人员的需求的网站。无论您是初学者还是经验丰富的开发者,都可以在这里找到有用的信息和资料,我们将助您提升编程技能和知识。
专业开发
高端定制
售后无忧
站内资源均为本站制作或收集于互联网等平台,如有侵权,请第一时间联系本站,敬请谅解!本站资源仅限于学习与参考,严禁用于各种非法活动,否则后果自行负责,本站概不承担!