Programm zu line buffered output zwingen?

From: Till Toenges <tt(at)kyon.de>
Date: Thu, 16 Feb 2012 06:37:24 +0100

Hallo allerseits,

ich hatte letztens ein dummes Problem, bei dem ich die Ausgabe von einem
Programm durch eine Pipe geschickt habe und zeilenweise auswerten
wollte. Dummerweise wurde dann aber immer nur blockweise ausgewertet,
was mir gar nichts genützt hat.

In meinem Fall konnte ich glücklicherweise einfach den Source anpassen,
und an der richtigen Stelle ein fflush() einsetzen. Danach lief alles
wunderbar. Aber das ist keine richtig schöne Lösung, weil ich jetzt
meinen eigenen Patch rumschleppe.

Da es sich um Software von Apple handelt, genauer gesagt deren Version
von ping, habe ich auch keine offensichtliche Möglichkeit, den Fix dort
irgendwie in den offiziellen Source zu kriegen. Es sei denn, jemand
weiß, wie ich dort einen Patch einreichen kann :-)

Meine Frage ist nun, ob es eine Möglichkeit gibt, ein Programm zur
zeilenweisen Ausgabe zu zwingen, so als ob es auf einem TTY läuft. Ich
habe erstmal nur einen Eintrag für FreeBSD gefunden, der schon genau in
die Richtung geht, aber seit einem Jahr nicht weiter kommentiert wurde:
http://www.freebsd.org/cgi/query-pr.cgi?pr=154915

Hat da jemand einen guten Vorschlag?

Till

-- 
Kyon, Till Toenges, tt@kyon.de, http://kyon.de
Obergplatz 14, 47804 Krefeld, +49-2151-3620334
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Thu 16 Feb 2012 - 06:37:33 CET

search this site