2016-07-14 46 views
1

我试图完成(我认为)一个相当简单的事情,但无法找到任何现有的答案,所以在这里。产卵互动过程,并在NodeJS退出

我想模仿下面的bash脚本中的节点:

#!/usr/bin/bash 
mysql 

所以基本上完​​全像在命令行中输入“MySQL的”。到目前为止,我想出了以下内容:

var spawn = require('child_process').spawn; 
var child = spawn('/usr/bin/mysql', [], {stdio: 'inherit', detached: true}); 
child.unref(); 

该工程确定(我提出了与MySQL提示),但是当我键入命令就被发送到bash命令行不是MySQL。 我试过其他stdio选项(管道,忽略)与标准输出,stderr等听众,但这让我尽可能悬空提示。任何和所有建议表示赞赏!

+0

为什么投票?我猜是因为它是特定的,但另一方面,你可以用任何类型的交互式shell命令来替换“mysql”。 – michauwilliam

回答

2

您尝试过没有detached: true吗?它应该与stdio设置为inherit和detached未设置在选项

+0

Duh:0我尝试了这么多的组合,我真的认为这个也没有工作。你说得对,摆脱了detached和unref()的作品。谢谢! – michauwilliam