Le module Node OS

Le module os de Node.js fournit des fonctions utiles pour interagir avec le système sous-jacent

Ce module fournit de nombreuses fonctions que vous pouvez utiliser pour récupérer des informations du système d'exploitation sous-jacent et de l'ordinateur sur lequel le programme s'exécute, et interagir avec eux.

const os = require('os')

Il existe quelques propriétés utiles qui nous indiquent des éléments clés liés à la gestion des fichiers:

os.EOLdonne la séquence de délimitation de ligne. C'est\nsur Linux et macOS, et\r\nsur Windows.

Quand je dis Linux et macOS, je veux dire les plates-formes POSIX. Pour plus de simplicité, j'exclus les autres systèmes d'exploitation moins populaires sur lesquels Node peut fonctionner.

os.constants.signalsnous indique toutes les constantes liées à la gestion des signaux de processus, comme SIGHUP, SIGKILL et ainsi de suite.

os.constants.errnodéfinit les constantes pour les rapports d'erreurs, comme EADDRINUSE, EOVERFLOW et plus.

Vous pouvez tous les lire surhttps://nodejs.org/api/os.html#os_signal_constants.

Voyons maintenant les principales méthodes quiosfournit:

os.arch()

Renvoie la chaîne qui identifie l'architecture sous-jacente, commearm,x64,arm64.

os.cpus()

Renvoie des informations sur les processeurs disponibles sur votre système.

Exemple:

[ { model: 'Intel(R) Core(TM)2 Duo CPU     P8600  @ 2.40GHz',
    speed: 2400,
    times:
     { user: 281685380,
       nice: 0,
       sys: 187986530,
       idle: 685833750,
       irq: 0 } },
  { model: 'Intel(R) Core(TM)2 Duo CPU     P8600  @ 2.40GHz',
    speed: 2400,
    times:
     { user: 282348700,
       nice: 0,
       sys: 161800480,
       idle: 703509470,
       irq: 0 } } ]

os.endianness()

RevenirBEouLEselon si Node a été compilé avecBig Endian ou Little Endian.

os.freemem()

Renvoie le nombre d'octets représentant la mémoire libre du système.

os.homedir()

Renvoie le chemin d'accès au répertoire personnel de l'utilisateur actuel.

Exemple:

'/Users/flavio'

os.hostname()

Renvoyez le nom d'hôte.

os.loadavg()

Renvoie le calcul effectué par le système d'exploitation sur la moyenne de charge.

Il ne renvoie qu'une valeur significative sous Linux et macOS.

Exemple:

[ 3.68798828125, 4.00244140625, 11.1181640625 ]

os.networkInterfaces()

Renvoie les détails des interfaces réseau disponibles sur votre système.

Exemple:

{ lo0:
   [ { address: '127.0.0.1',
       netmask: '255.0.0.0',
       family: 'IPv4',
       mac: 'fe:82:00:00:00:00',
       internal: true },
     { address: '::1',
       netmask: 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff',
       family: 'IPv6',
       mac: 'fe:82:00:00:00:00',
       scopeid: 0,
       internal: true },
     { address: 'fe80::1',
       netmask: 'ffff:ffff:ffff:ffff::',
       family: 'IPv6',
       mac: 'fe:82:00:00:00:00',
       scopeid: 1,
       internal: true } ],
  en1:
   [ { address: 'fe82::9b:8282:d7e6:496e',
       netmask: 'ffff:ffff:ffff:ffff::',
       family: 'IPv6',
       mac: '06:00:00:02:0e:00',
       scopeid: 5,
       internal: false },
     { address: '192.168.1.38',
       netmask: '255.255.255.0',
       family: 'IPv4',
       mac: '06:00:00:02:0e:00',
       internal: false } ],
  utun0:
   [ { address: 'fe80::2513:72bc:f405:61d0',
       netmask: 'ffff:ffff:ffff:ffff::',
       family: 'IPv6',
       mac: 'fe:80:00:20:00:00',
       scopeid: 8,
       internal: false } ] }

os.platform()

Renvoyez la plate-forme pour laquelle Node a été compilé:

  • darwin
  • freebsd
  • linux
  • openbsd
  • win32
  • …Suite

os.release()

Renvoie une chaîne qui identifie le numéro de version du système d'exploitation

os.tmpdir()

Renvoie le chemin d'accès au dossier temporaire affecté.

os.totalmem()

Renvoie le nombre d'octets qui représentent la mémoire totale disponible dans le système.

os.type()

Identifie le système d'exploitation:

  • Linux
  • Darwinsur macOS
  • Windows_NTsous Windows

os.uptime()

Renvoie le nombre de secondes pendant lesquelles l'ordinateur a fonctionné depuis son dernier redémarrage.

os.userInfo()

Renvoie des informations sur l'utilisateur actuel

Téléchargez mon gratuitManuel de Node.js


Plus de didacticiels sur les nœuds: