说我有一个像这样的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再回到父母身边?这基本上就是我要寻找的行为。