Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Melaksanakan Binari dan Fail Baris Perintah dalam Node.js?

Bagaimanakah Saya Boleh Melaksanakan Binari dan Fail Baris Perintah dalam Node.js?

Patricia Arquette
Patricia Arquetteasal
2024-12-25 09:20:11911semak imbas

How Can I Execute Command Line Binaries and Files in Node.js?

Melaksanakan Binari Baris Perintah dalam Node.js

Dalam Node.js, proses melaksanakan binari baris arahan dikendalikan melalui modul child_process. Sama ada anda perlu melaksanakan perintah atau mengendalikan proses I/O dengan strim, terdapat pilihan untuk memenuhi keperluan anda.

Pelaksanaan Asynchronous

Melaksanakan Perintah dengan Penampan

Untuk melaksanakan arahan dan ambil output lengkapnya sebagai penimbal, gunakan child_process.exec():

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

exec('command', (error, stdout, stderr) => {
  // command output is in stdout
});

Output Penstriman

Jika anda perlu mengendalikan proses I/O dengan strim, gunakan child_process.spawn():

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

const child = spawn('command', ['args']);

child.stdout.on('data', (chunk) => {
  // output will be here in chunks
});

Pelaksanaan Segerak

Node.js juga menyokong spawn dan exec segerak kaedah. Kaedah ini tidak mengembalikan contoh ChildProcess:

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

let stdout = execSync('command');

Melaksanakan Fail

Sekiranya anda perlu melaksanakan fail dan bukannya arahan, gunakan child_process.execFile():

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

execFile('file', ['args'], (error, stdout, stderr) => {
  // command output is in stdout
});

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Binari dan Fail Baris Perintah dalam Node.js?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn