参考此讨论
一旦开始在stdin上侦听数据,node将等待在stdin上的输入,直到被告知不这样做为止。当用户按下ctrl-d(表示输入结束)或程序调用stdin.pause()时,节点将停止等待stdin。
除非没有任何事情要做或等待,否则节点程序不会退出。发生的是,它在标准输入上等待,因此永不退出。
尝试将setTimeout回调更改为
console.log('kill');child.stdin.pause();child.kill();我希望它能起作用。

参考此讨论
一旦开始在stdin上侦听数据,node将等待在stdin上的输入,直到被告知不这样做为止。当用户按下ctrl-d(表示输入结束)或程序调用stdin.pause()时,节点将停止等待stdin。
除非没有任何事情要做或等待,否则节点程序不会退出。发生的是,它在标准输入上等待,因此永不退出。
尝试将setTimeout回调更改为
console.log('kill');child.stdin.pause();child.kill();我希望它能起作用。