Module 基礎模組

模組os

os模組是核心模組之一,用於運行的作業系統函數。它提供了與作業系統互動的實用程式功能,包括檔案位址、檔案路徑、網路介面、主機名稱、作業系統類型等

常用方法

os模組中提供的方法很多,以下是幾個比較常用的方法:

os.hostname()

取得目前電腦的主機名稱。

範例程式碼:

1 2 3
const os = require('os'); const hostname = os.hostname(); console.log(hostname);

回傳結果類似如下:

1
localhost

os.type()

取得目前作業系統的名稱。

範例程式碼:

1 2 3
const os = require('os'); const type = os.type(); console.log(type);

回傳結果類似如下:

1
Windows_NT

os.release()

取得目前作業系統的版本。

範例程式碼:

1 2 3
const os = require('os'); const release = os.release(); console.log(release);

回傳結果類似如下:

1
10.0.18362

os.arch()

取得作業系統的處理器架構。

範例程式碼:

1 2 3
const os = require('os'); const arch = os.arch(); console.log(arch);

回傳結果類似如下:

1
x64

os.cpus()

取得CPU 的資訊。

範例程式碼:

1 2 3
const os = require('os'); const cpus = os.cpus(); console.log(cpus);

回傳結果類似如下:

1 2 3 4 5 6
[ { model: 'Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz', speed: 2592, times: { user: 2400298, nice: 0, sys: 9684894, idle: 91516801, irq: 0 } }, { model: 'Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz', speed: 2592, times: { user: 464927, nice: 0, sys: 1454926, idle: 95119061, irq: 0 } }, { model: 'Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz', speed: 2592, times: { user: 232077, nice: 0, sys: 898942, idle: 95482112, irq: 0 } }, { model: 'Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz', speed: 2592, times: { user: 950448, nice: 0, sys: 1875169, idle: 93117788, irq: 0 } } ]

物件

Service

Service構造函數,參見Service

1
Service os.Service;

靜態函數

hostname

查詢目前執行環境主機名

1
static String os.hostname();

回傳結果:

  • String, 返回主機名

endianness

查詢目前CPU 的位元組順序

1
static String os.endianness();

回傳結果:

  • String, 返回位元組順序

type

查詢目前運行環境作業系統名稱

1
static String os.type();

回傳結果:

  • String, 返回系統名稱

release

查詢目前運行環境作業系統版本

1
static String os.release();

回傳結果:

  • String, 回傳版本訊息

homedir

查詢目前使用者目錄

1
static String os.homedir();

回傳結果:

  • String, 返回目錄字串

arch

查詢目前cpu 環境

1
static String os.arch();

回傳結果:

  • String, 回傳cpu 類型,可能的結果為'amd64', 'arm', 'arm64', 'ia32'

loadavg

查詢運行環境1分鐘,5分鐘,15分鐘平均負載

1
static Array os.loadavg();

回傳結果:

  • Array, 傳回包含三個負載資料的陣列

totalmem

查詢運行環境總內存,以位元組為單位

1
static Long os.totalmem();

回傳結果:

  • Long, 返回內存數據

freemem

查詢運行環境可用內存,以位元組為單位

1
static Long os.freemem();

回傳結果:

  • Long, 返回內存數據

cpus

查詢目前運行環境cpu 個數和參數

1
static Array os.cpus();

回傳結果:

  • Array, 傳回包含cpu 參數的數組,每一項對應一個cpu

cpuNumbers

查詢目前運行環境cpu 個數

1
static Integer os.cpuNumbers();

回傳結果:

  • Integer, 返回cpu 個數

tmpdir

查詢目前執行環境暫存檔案目錄

1
static String os.tmpdir();

回傳結果:

  • String, 返回暫存檔案目錄

userInfo

傳回目前有效執行使用者訊息

1
static Object os.userInfo(Object options = {});

呼叫參數:

  • options: Object, 用於解釋結果字串的字元編碼

回傳結果:

  • Object, 目前有效執行使用者訊息

networkInterfaces

查詢目前運行環境網路信息

1
static Object os.networkInterfaces();

回傳結果:

  • Object, 返回網卡訊息

platform

查詢目前平台名稱

1
static String os.platform();

回傳結果:

  • String, 回傳平台名稱,可能的結果為'darwin', 'freebsd', 'linux', 或'win32'

time

解析時間字串或查詢運行環境當前時間

1
static Date os.time(String tmString = "");

呼叫參數:

  • tmString: String, 時間字串,預設則查詢目前時間

回傳結果:

  • Date, 返回javascript Date 對象

dateAdd

時間計算函數,根據part 指定計算時間

1 2 3
static Date os.dateAdd(Date d, Integer num, String part);

呼叫參數:

  • d: Date, 指定用於計算Date 對象
  • num: Integer, 指定運算的數值
  • part: String, 指定運算的時間部位,接收值為:"year", "month", "day", "hour", "minute", "second"

回傳結果:

  • Date, 返回javascript Date 對象

靜態屬性

timezone

Integer, 查詢執行環境目前時區

1
static readonly Integer os.timezone;

EOL

String, 查詢目前執行環境行結尾標識,posix:\"\n\";windows:\"\r\n\"

1
static readonly String os.EOL;