Maison > interface Web > js tutoriel > le corps du texte

Comment utiliser Node.js pour vérifier le système d'exploitation et son numéro de version

青灯夜游
Libérer: 2021-09-13 09:25:28
avant
4680 Les gens l'ont consulté

Comment utiliser Node.js pour vérifier le système d'exploitation et son numéro de version ? L'article suivant vous expliquera comment déterminer le système d'exploitation et obtenir le numéro de version Node.js des systèmes Windows et Mac dans Node.js.

Comment utiliser Node.js pour vérifier le système d'exploitation et son numéro de version

Obtenir le système d'exploitation

Il est très simple de déterminer le système d'exploitation dans Node.js. Utilisez process.platformprocess.platform 即可返回标识操作系统平台的字符串,可能的值为:

  • aix
  • darwin
  • freebsd
  • linux
  • openbsd
  • sunos
  • win32

除了这种方法,还可以使用 os 模块的 os.platform() 方法获取,得到的结果是一样的。【推荐学习:《nodejs 教程》】

获取 Windows 系统版本号

知道操作系统之后,我们还希望获取其版本号,例如如果用户是 windows,我想知道他是用的 win7 还是 win10 呀,这个时候应该怎么办呢?还是要用到 os 模块的 os.release() 方法获取,得到的格式如下:

10.0.18363
Copier après la connexion

格式是 major.minor.build,各版本的对应关系如下:

 Version                                    major.minor   
------------------------------------------ ------------- 
 Windows 10, Windows Server 2016            10.0
 Windows 8.1, Windows Server 2012 R2        6.3
 Windows 8, Windows Server 2012             6.2
 Windows 7, Windows Server 2008 R2          6.1
 Windows Vista, Windows Server 2008         6.0
 Windows XP Professional x64 Edition,       5.2
 Windows Server 2003, Windows Home Server
 Windows XP                                 5.1
 Windows 2000                               5.0
Copier après la connexion

更详细的介绍,可参考官方文档。这里给出一个如何判断 win7 或 win7 及以下的代码:

const os = require('os')
const semver = require('semver')
const platform = os.platform()
const isWindows = platform === 'win32'
const release = os.release()
const isWin7 = isWindows && release.startsWith('6.1')
const win7orOlder = isWindows && semver.lte('6.1')
Copier après la connexion

获取 Mac 系统版本号

但在 Mac 上,os.release() 得到的结果就不准了,比如我 Mac 版本是 11.1,但是 os.release() 返回的是 20.2.0,如果 Mac 版本是 11.5,返回的却是 20.5.0 pour renvoyer une chaîne identifiant la plate-forme du système d'exploitation, qui peut La valeur est :

  • aix
  • darwin
  • freebsd</code >< /li><li><code>linux
  • openbsd
  • sunos
  • win32

En plus de cette méthode, vous pouvez également utiliser la méthode os.platform() du os module à obtenir, les résultats obtenus sont les mêmes. [Apprentissage recommandé : "nodejs tutoriel

"]

Obtenir le numéro de version du système Windows

Après avoir connu le système d'exploitation, nous souhaitons également obtenir son numéro de version. Par exemple, si l'utilisateur est Windows, je veux savoir s'il l'utilise. win7 ou win10. À ce moment-là, que devons-nous faire ? Il faut quand même utiliser la méthode os.release() du module os pour l'obtenir. Le format obtenu est le suivant :

$ sw_vers
ProductName:	macOS
ProductVersion:	11.4
BuildVersion:	20F71
Copier après la connexion

Le format est . major.minor.build</code >, la relation correspondante entre chaque version est la suivante : <a href="https://www.php.cn/course.html" target="_blank" textvalue="编程入门"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:js;toolbar:false;">$ sw_vers -productVersion 11.4</pre><div class="contentsignin">Copier après la connexion</div></div></a>Pour une introduction plus détaillée, veuillez vous référer à <a href="https://docs.microsoft.com/en-us /windows/win32/api/winnt/ns-winnt- osversioninfoexw#remarks" target="_blank" ref="nofollow noopener noreferrer">Documentation officielle </p>. Voici un code sur la façon de déterminer win7 ou win7 et ci-dessous : 🎜<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:js;toolbar:false;">const { execSync } = require(&amp;#39;child_process&amp;#39;) const macVersion = execSync(&amp;#39;sw_vers -productVersion&amp;#39;, { encoding: &amp;#39;utf-8&amp;#39; })</pre><div class="contentsignin">Copier après la connexion</div></div><h2 data-id="heading-2">🎜Obtenez le numéro de version du système Mac🎜🎜🎜Mais sur Mac, <code>os.release() Le résultat obtenu est inexact. Par exemple, ma version Mac est 11.1, mais os.release() renvoie 20.2.0 si la version Mac est 11.5. , mais la valeur renvoyée est 20.5.0, elle ne peut donc pas être obtenue en utilisant cette méthode. Cependant, il existe une commande sw_vers sur Mac Lorsque nous l'exécutons dans le terminal, le résultat est le suivant : 🎜rrreee🎜Vous pouvez voir que la ligne ProductVersion affiche le numéro de version exact, qui peut être extrait avec la commande suivante : 🎜 rrreee🎜À ce stade, le code apparaît : 🎜rrreee🎜Pour la correspondance des numéros de version sur Mac, veuillez vous référer à la 🎜documentation officielle🎜. 🎜🎜Pour plus de connaissances sur la programmation, veuillez visiter : 🎜Introduction à la programmation🎜 ! ! 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:juejin.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!