在终止之前无法从标准输出读取


bash = require('child_process').spawn '/bin/bash', []
console.log 'Spawned bash as pid ' + bash.pid
bash.stdout.on 'data', (data) ->
    process.stdout.write data

我希望上面的代码会从 bash 读取并显示到进程标准输出。其实不然。如果我用/bin/bash -c /bin/ls替换/bin/bash,我将得到我期望的ls输出。显然,这与bash保持开放有关。

关于如何在不必终止进程的情况下读取bash输出的任何提示?

使用 https://github.com/chjj/pty.js/

它就像一个魅力!

最新更新