2012-06-05 6 views
6

Es gibt viele Knoten js Beispiele online über wie ein Kind-Prozess spawn und fangen Sie dann das Ergebnis als Zeichenfolge für Ihre eigene Verarbeitung.Knoten js interagieren mit Shell-Anwendung

Aber ...

Ich möchte 'interact' mit einem Kind-Prozess. Zum Beispiel, wie würde ich einen Knoten js Anwendung schreiben als startet durch den Aufruf 'python' und gibt dann eine Anweisung '1+1', lassen Sie mich das Ergebnis '2' fangen, bevor Sie mit der Eingabe einer anderen willkürlichen Anweisung '4+4'?

(Und bei 'type' gehe ich davon aus, dass das Streaming von Daten an die Standardeingabe erforderlich ist, die der Prozess verwendet).

+0

Dieses Video zeigt auch, was ich zu tun versuche (um 3:52) http://www.youtube.com/watch?v=16nFMucvwYQ – Trindaz

Antwort

7
var child = require('child_process'); 
var ps = child.spawn('python', ['-i']); 
ps.stdout.pipe(process.stdout); 
ps.stdin.write('1+1'); 
ps.stdin.end(); 

funktioniert ein Genuss!