在 Nodejs 中执行命令并将输出附加到控制台

Executing Command in Nodejs and Attaching the output to the console

我正在开发一个 CLI 工具来为我们的工作流程添加一层额外的自动化和实用程序,我在我的 CLI 中用一个替代方法包装了 webpack 开发命令(这里有一个演示):-

function runDev(){
   this.doSomePreAutomationAndPreperations();
   this.runWebpackDevCommand();
}

我正在使用 NodeJs child_proecess.exec 并且我正在尝试找出一种方法来执行 webpack dev 命令并将其附加到终端(如 -it in docker 如果你'熟悉它)或将控制转移到子进程(因此输出将直接发送到控制台)。

有办法吗?

事实证明,我可以实现这一点,只是让子进程继承stdio。例如:-

const { spawn } = require('child_process')
const shell = spawn('sh',[], { stdio: 'inherit' })
shell.on('close',(code)=>{console.log('[shell] terminated :',code)})