溫馨提示×

JavaScript與Linux命令行如何交互

小樊
44
2025-09-12 17:07:04
欄目: 編程語言

在JavaScript中,你可以使用Node.js的child_process模塊來與Linux命令行進行交互。child_process模塊提供了execspawn兩種方法來創建子進程并執行Linux命令。

以下是使用child_process模塊的一個簡單示例:

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

// 執行Linux命令
exec('ls', (error, stdout, stderr) => {
  if (error) {
    console.error(`執行錯誤: ${error}`);
    return;
  }
  console.log(`stdout: ${stdout}`);
  if (stderr) {
    console.error(`stderr: ${stderr}`);
  }
});

如果你需要更高級的交互,例如實時接收命令輸出或向命令發送輸入,你可以使用spawn方法:

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

// 創建子進程
const child = spawn('bash');

// 監聽子進程的輸出
child.stdout.on('data', (data) => {
  console.log(`stdout: ${data}`);
});

// 監聽子進程的錯誤輸出
child.stderr.on('data', (data) => {
  console.error(`stderr: ${data}`);
});

// 監聽子進程的關閉事件
child.on('close', (code) => {
  console.log(`子進程退出,退出碼:${code}`);
});

// 向子進程發送輸入
child.stdin.write('echo "Hello from child process"\n');
child.stdin.end();

請注意,這些示例需要在Node.js環境中運行,而不是在瀏覽器中。在瀏覽器中運行JavaScript代碼會受到安全限制,無法直接訪問系統命令行。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女