在NodeJS中生成交互式进程并退出

时间:2016-07-14 12:32:23

标签: mysql node.js bash command-line spawn

我正在努力完成(我认为)一个相当简单的事情,但找不到任何现有答案,所以就这样了。

我想模仿节点中的以下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。 我已经尝试了stdout,stderr等上的监听器的其他stdio选项(管道,忽略),但这让我悬挂空提示符。任何和所有建议都赞赏!

1 个答案:

答案 0 :(得分:3)

你没有detached: true试过吗?它应该与stdio设置为inherit并且未在选项

中设置分离