在终止之前无法从stdout读取

时间:2012-09-05 01:27:32

标签: node.js coffeescript

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读取并显示到进程stdout。它没有。如果我将/bin/bash替换为/bin/bash -c /bin/ls,我将得到ls的输出,这是我期望的。显然这与bash保持开放有关。

有关如何阅读bash输出而不必让进程终止的任何提示?

1 个答案:

答案 0 :(得分:0)

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

它就像一个魅力!