如何在 Node.js 中使用子进程?

Node.js 是一個廣受歡迎的 JavaScript 環境,它可以讓開發者建立可擴展的網路應用程式。Node.js 提供了一個子进程模組,可以讓開發者在 Node.js 中執行外部程式,並且可以控制它們的輸入和輸出。

什麼是子进程?

子进程是一個可以在 Node.js 中執行的外部程式,它可以執行任何可以在命令列中執行的程式,例如 Bash 腳本、Python 程式或其他程式語言。子进程可以讓開發者在 Node.js 中執行外部程式,並且可以控制它們的輸入和輸出。

如何使用子进程?

Node.js 提供了一個子进程模組,可以讓開發者在 Node.js 中執行外部程式,並且可以控制它們的輸入和輸出。使用子进程模組,開發者可以執行任何可以在命令列中執行的程式,並且可以控制它們的輸入和輸出。

要使用子进程模組,開發者首先需要導入子进程模組:

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

接著,開發者可以使用 spawn() 方法執行外部程式:

const child = spawn('ls', ['-lh', '/usr']);

上面的程式碼會執行 ls -lh /usr 命令,並且將結果存儲在 child 變數中。

開發者可以使用 child.stdout.on() 方法來讀取子进程的輸出:

child.stdout.on('data', (data) => {
  console.log(`child stdout:\n${data}`);
});

開發者也可以使用 child.stderr.on() 方法來讀取子进程的錯誤輸出:

child.stderr.on('data', (data) => {
  console.error(`child stderr:\n${data}`);
});

最後,開發者可以使用 child.on() 方法來檢查子进程是否已經完成:

child.on('close', (code) => {
  console.log(`child process exited with code ${code}`);
});

使用 Node.js 的子进程模組,開發者可以在 Node.js 中執行外部程式,並且可以控制它們的輸入和輸出。

總結

Node.js 提供了一個子进程模組,可以讓開發者在 Node.js 中執行外部程式,並且可以控制它們的輸入和輸出。使用子进程模組,開發者可以執行任何可以在命令列中執行的程式,並且可以控制它們的輸入和輸出。

Categorized in:

Tagged in:

,