`unbuffer` o` stdbuf` para eliminar el buffer de stdout?

¿Hay alguna diferencia entre unbuffer (1) y stdbuf (1)? Por lo que he deducido, unbuffer hace más que el "mejor esfuerzo" de llamar a la function libc set (X) buf al principio, y luego dejar que las cosas sean?

Ellos trabajan de maneras completamente diferentes.

El progtwig que unbuffer usa espera ejecutar el command nombrado. Debido a que expect crea un pseudo-tty para adjuntarse al process estándar del process secundario, se puede engañar al niño para que piense que debería usar buffer de línea en lugar de buffer de bloques. Algunos progtwigs cambiarán su comportamiento. Isatty (stdout) es verdadero, otros no y es muy difícil saber cuál será y cuál no.

El progtwig stdbuf intenta poner libstdbuf frente a libc para binarys cargados dinámicamente. Donde libstdbuf networkingefine la estrategia de almacenamiento en búfer pnetworkingeterminada de las llamadas libc stdio.

Descubrí esto por

apt-get source expect coreutils 

y leyendo la fuente relevante para cada progtwig.