2013-02-23 19 views
15

私はGruntを使用してプロセスを生成しましたが、出力ストリームに書き込まれたもの(console.logなど)はコンソールに表示されません。出力がキャプチャされず、出力がキャプチャされない

私はGruntにプロセスの出力を表示させたいと思います。

grunt.util.spawn(
    { cmd: 'node' 
    , args: ['app.js'] 
    , opts: 
     { stdio: 
      [ process.stdin 
      , process.stout 
      , process.stderr 
      ] 
     } 
    }) 

答えて

33

opts: {stdio: 'inherit'}に設定してみてください。そうでなければすることができますパイプ出力:

var child = grunt.util.spawn({ 
    cmd: process.argv[0], // <- A better way to find the node binary 
    args: ['app.js'] 
}); 
child.stdout.pipe(process.stdout); 
child.stderr.pipe(process.stderr); 

それとも、出力変更する場合:ノードのバイナリを見つけることの先端のための「inherit'`が行うトリック、そして感謝:

child.stdout.on('data', function(buf) { 
    console.log(String(buf)); 
}); 
+1

'stdioのを! –

関連する問題