Nodejs的OS子產品
Node.js os 子產品提供了一些基本的系統操作函數。我們可以通過以下方式引入該子產品:
var os = require("os")
複制
序号 | 方法 | 描述 |
---|---|---|
1 | os.tmpdir() | 傳回作業系統的預設臨時檔案夾。 |
2 | os.endianness() | 傳回 CPU 的位元組序,可能的是 “BE” 或 “LE”。 |
3 | os.hostname() | 傳回作業系統的主機名。 |
4 | os.type() | 傳回作業系統名 |
5 | os.platform() | 傳回編譯時的作業系統名 |
6 | os.arch() | 傳回作業系統 CPU 架構,可能的值有 “x64”、“arm” 和 “ia32”。 |
7 | os.release() | 傳回作業系統的發行版本。 |
8 | os.uptime() 傳回作業系統運作的時間,以秒為機關。 | |
9 | os.loadavg() | 傳回一個包含 1、5、15 分鐘平均負載的數組。 |
10 | os.totalmem() | 傳回系統記憶體總量,機關為位元組。 |
11 | os.freemem() | 傳回作業系統空閑記憶體量,機關是位元組。 |
12 | os.cpus() | 傳回一個對象數組,包含所安裝的每個 CPU/核心的資訊:型号、速度(機關 MHz)、時間(一個包含 user、nice、sys、idle 和 irq 所使用 CPU/核心毫秒數的對象)。 |
13 | os.networkInterfaces() | 獲得網絡接口清單。 |
代碼示例
// 讀取系統的cpu的資訊
const os = require('os')
// os.cpus()
// 傳回一個對象數組,包含所安裝的每個 CPU/核心的資訊:型号、速度(機關 MHz)、時間(一個包含 user、nice、sys、idle 和 irq 所使用 CPU/核心毫秒數的對象)。
const cpus = os.cpus(); // 擷取目前系統的cpu的數量
//console.log(cpus);
console.log(cpus.length);
console.log('作業系統的預設臨時檔案件:' + os.tmpdir());
console.log('CPU的位元組序為:' + os.endianness());
console.log('作業系統的主機名:' + os.hostname());
console.log('作業系統名:' + os.type());
console.log('編譯時的作業系統名:' + os.platform());
// os.arch() 傳回作業系統的CPU架構,可能的值有"x64"、"arm"和"ia32"
console.log('作業系統CPU架構:' + os.arch());
// 作業系統的發行版本
console.log('作業系統的發行版本:' + os.release());
// 作業系統運作的時間,以秒為機關
console.log('作業系統運作的時間:' + os.uptime() + '秒');
// 擷取記憶體的容量資訊
// os.totalmem() 傳回系統記憶體總量,機關為位元組。
const total = os.totalmem(); // bytes
console.log(total / 1024 / 1024 / 1024); // GB
// os.freemem() 傳回作業系統空閑記憶體量,機關是位元組。
const free = os.freemem();
console.log(free / 1024 / 1024 / 1024); // GB
// os.networkInterfaces() 獲得網絡接口清單
console.log('網絡接口清單:' + os.networkInterfaces());
// 作業系統特定的行末标志
// 在 POSIX 上是 \n
// 在Windows上是 \r\n
console.log('作業系統行末标志:' + os.EOL);
複制
我在自己的Windows10系統下VSCode中的運作結果如下圖所示:
在我的單核騰訊雲CentOS7系統下的運作結果如下圖所示: