Bei meinen Tests erfolgt die Pufferung nur beim ersten Ausführen des Bash-Skripts. So
bash -c 'echo' > pipe; bash -c 'echo hi; sleep 5; echo bye' > pipe
macht ziemlich viel, was Sie wollen, aber mit einem extra Newline an der Spitze. (Ich brauchte nicht einmal stdbuf).