返回

技术深耕:node 优雅获取 mac 系统版本,化繁为简,一劳永逸

前端

在软件开发过程中,经常会遇到需要根据系统版本进行兼容性处理的情况。例如,需要根据不同 macOS 版本,进行不同的兼容性处理。这种情况下,就需要获取 mac 系统版本。

获取 mac 系统版本有多种方法,这里介绍三种最常用的方法:

方法一:os.release()

os.release() 方法可以获取系统版本信息。该方法返回一个对象,其中包含系统版本、发行版本、内核版本和主机名等信息。

const os = require('os');

const releaseInfo = os.release();

console.log(releaseInfo);

输出结果:

{
  "name": "Mac OS X",
  "version": "10.15.7",
  "build": "19H15",
  "platform": "darwin",
  "codename": null
}

方法二:platform.release()

platform.release() 方法也可以获取系统版本信息。该方法返回一个字符串,其中包含系统版本和发行版本信息。

const { platform } = require('os');

const release = platform.release();

console.log(release);

输出结果:

10.15.7

方法三:uname()

uname() 方法可以获取系统信息,包括系统版本、内核版本和主机名等信息。该方法返回一个对象,其中包含系统信息。

const { exec } = require('child_process');

exec('uname -a', (error, stdout, stderr) => {
  if (error) {
    console.error(`执行 uname 命令时出错:${error}`);
    return;
  }

  console.log(stdout);
});

输出结果:

Darwin MacBook-Pro-de-Julian 10.15.7 Darwin Kernel Version 19.6.0: Wed Jun  3 22:49:18 PDT 2020; root:xnu-6153.11.26~2/RELEASE_X86_64 x86_64

除了以上三种方法,还可以使用命令行获取系统版本信息。在终端中输入以下命令:

sw_vers

输出结果:

ProductName:    macOS
ProductVersion: 10.15.7
BuildVersion:   19H15

通过以上方法,就可以轻松获取 mac 系统版本。