在 NodeJS 中生成交互式进程并退出
Spawn interactive process and exit in 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。
我已经在 stdout、stderr 等上尝试了其他 stdio 选项(pipe、ignore)和监听器,但这让我达到了挂起空提示的程度。任何和所有建议表示赞赏!
你试过没有detached: true
吗?它应该与 stdio 设置为 inherit
并且未在选项
中设置分离
我正在尝试完成(我认为)一件相当简单的事情,但找不到任何现有的答案,所以就这样吧。
我想在节点中模仿以下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 选项(pipe、ignore)和监听器,但这让我达到了挂起空提示的程度。任何和所有建议表示赞赏!
你试过没有detached: true
吗?它应该与 stdio 设置为 inherit
并且未在选项