Das Ausführen von Befehlszeilen-Binärdateien von Drittanbietern aus Node.js ist mit dem Modul child_process ganz einfach.
Exec für die vollständige Ausgabe verwenden
Um einen Befehl auszuführen und abzurufen Vollständige Ausgabe, verwenden Sie child_process.exec:
const { exec } = require('child_process'); exec('prince -v builds/pdf/book.html -o builds/pdf/book.pdf', (err, stdout, stderr) => { if (err) return; console.log(`stdout: ${stdout}`); console.log(`stderr: ${stderr}`); });
Verwenden Sie spawn für die Stream-Ausgabe
Um Prozess-E/A mit Streams zu verarbeiten, verwenden Sie child_process.spawn:
const { spawn } = require('child_process'); const child = spawn('prince', [ '-v', 'builds/pdf/book.html', '-o', 'builds/pdf/book.pdf' ]); child.stdout.on('data', (chunk) => { // Output chunks are received here });
Verwenden von execFile für Ausführbare Dateien
Um eine ausführbare Datei anstelle eines Befehls auszuführen, verwenden Sie child_process.execFile:
const { execFile } = require('child_process'); execFile(file, args, options, (err, stdout, stderr) => { // Output is retrieved in stdout });
Synchronous Functions
Für synchron Ausführung bietet Node.js synchrone Gegenstücke dazu Methoden:
Sie geben keine ChildProcess-Instanzen zurück wie ihre asynchronen Gegenstücke.
Hinweis: Für Node.js-Versionen 0.11.12 und höher gelten die obigen Beispiele. Informationen zu früheren Versionen finden Sie im Legacy-Code, der in der bereitgestellten Antwort enthalten ist.
Das obige ist der detaillierte Inhalt vonWie kann ich Befehlszeilen-Binärdateien in Node.js mit „child_process' ausführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!