popen() alternative

Meine Frage ist Erweiterung dieses: popen erzeugt eine zusätzliche sh-Prozess

Motive:

1) Mein Programm erstellen müssen, ein Kind, das keine tail auf eine Datei. Ich brauche zu wird der output Zeile für Zeile. Das ist, warum ich bin mit popen denn es gibt in der DATEI *. Kann ich mir einfach Holen einzige Linie, tun, was ich tun müssen, und drucken Sie es.

Ein problem mit popen ist, dass Sie nicht bekommen pid des Kindes (tail-Befehl in meinem Fall).

2) Mein Programm soll nicht beendet werden, bevor Ihr Kind getan wird. Also ich muss wait; aber ohne pid, ich kann es nicht tun.

Wie kann ich erreichen, beide Ziele haben Sie?

Möglich (Unordnung) Lösung: tun execvp("tail-f Datei > tmpfile") und das Lesen zu halten, dass tmpfile. Ich bin mir nicht sicher wie gut diese Lösung ist, aber.

InformationsquelleAutor hari | 2011-07-19
Schreibe einen Kommentar