使用node.js将stdin传递到子进程

时间:2018-12-15 02:33:10

标签: node.js bash

说我有一个像这样的node.js脚本:

import * as cp from 'child_process'

process.stdin.resume().on('data', d => {

   if(d === 'shell'){
     const k = cp.spawn('bash');
     process.stdin.pipe(k.stdin);
   }

});

这可能在技术上可行,但是我不确定是否有意义。我相信它将父流程的stdin也传递给子流程吗?有没有更好的方式来做我想做的事?

IOW,最初stdin控制父进程的操作,但是如果键入“ shell”,我希望将stdin仅发送给子进程,然后,如果用户使用“ ctrl-c”,则将发送stdin再回到父母身边?这基本上就是我要寻找的行为。

0 个答案:

没有答案