【发布时间】:2015-08-29 15:40:15
【问题描述】:
我对 Node.js 有疑问。使用 Python,如果我想执行外部命令,我曾经这样做:
import subprocess
subprocess.call("bower init", shell=True)
我在 Node.js 中阅读了有关 child_process.exec 和 spawn 的信息,但我不能做我想做的事。我想要什么?
我想执行一个外部命令(如bower init)并实时查看其输出并与 bower 本身进行交互。我唯一能做的就是接收最终输出,但不允许我与程序进行交互。
问候
编辑:我看到this 的问题,但答案在这里不起作用。我想在外部程序需要时发送输入。
【问题讨论】:
-
该答案显示了如何读取数据以及如何发送数据。目前尚不清楚您的编辑所要求的内容未涵盖在内。您将侦听进程中的数据,然后调用
.write将数据发送到进程。 -
我要再试一次。看起来很简单,但是..
-
如果你真的需要一个shell,那么看看pty.js。否则,
child_process.spawn()应该就是你所需要的。
标签: javascript node.js shell command