2013-02-23 22 views
15

Grunt kullanarak bir işlem oluşturdum, ancak çıktı akışına yazılan hiçbir şey (console.log gibi) konsolda görüntüleniyor.Çıktıyı yakalamayan grup oluşturma işlemi

Grunt'ın herhangi bir çıkışı işlemden görüntülemesini isterim.

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

cevap

33

opts: {stdio: 'inherit'}'a ayarlamayı deneyin. Aksi yapabilirsiniz boru çıkışı:

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); 

Yoksa çıkışını değiştirmek istiyorsanız: Düğüm ikili bulma ucu için 'inherit'` hile yok, ve teşekkür:

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

'stdio ! –