在 Node.js 中,可以使用 child_process 模組來執行第三方命令列二進位檔案。以下介紹如何完成此任務:
child_process.exec:對於緩衝輸出,請使用 child_process.exec。它允許您執行命令並以緩衝區的形式檢索其完整輸出。
child_process.spawn:如果您需要對進程 I/O 進行更精細的控制,請使用 child_process.spawn。此方法使您能夠透過串流與進程的 stdin、stdout 和 stderr 進行交互,從而可以更靈活地處理大量資料。
child_process.execFile:執行的替代選項具體檔案是child_process.execFile。它的操作與 Spawn 類似,但提供了用於檢索緩衝輸出的回呼。
Node 0.11.12 及更高版本:Node 版本 0.11.12 及更高版本引入了上述非同步方法的同步對應方法。這些同步版本允許執行簡單的腳本任務,但不會傳回 ChildProcess 的實例。
PrinceXML 轉換的範例程式碼(Ruby 與Node.js):
Ruby | Node.js |
---|---|
cmd = system("prince -v builds/pdf/book.html -o builds/pdf/book.pdf") | const { exec } = require('child_process'); exec('prince -v builds/pdf/book.html -o builds/pdf/book.pdf', (err, stdout, stderr) => {...}) |
此範例說明如何在Ruby 和Node.js 中執行PrinceXML 指令執行二進位文件以將文件轉換為PDF。
以上是如何在 Node.js 中執行命令列二進位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!