获取终端响应并将其存储为节点js中的变量

时间:2018-11-09 07:20:06

标签: javascript node.js docker

在Node.js文件的中间,我想将docker run -v ${PWD}/app.py:/app.py proj1part1dockerimage的终端响应存储在文件中,并将输出存储为var。我如何在不打开终端的情况下获得终端响应?

1 个答案:

答案 0 :(得分:1)

在node.js中,所有内容都是异步的,因此您必须使用回调:

child_process.exec("docker run -v ${PWD}/app.py:/app.py proj1part1dockerimage",
  (err, stdout, stderr) => {
    const output = stdout.toString();
  }
)

但是如果您要求它是即时的,我不建议:

const output = child_process.execSync("docker run -v ${PWD}/app.py:/app.py proj1part1dockerimage").toString();