Você pode querer executar seu script com stdbuf , que tem uma opção para o buffer de linha:
stdbuf --output=L --error=L command
A vantagem é que você não precisa modificar o código. Você também pode usar stdbuf
com utilitários que não têm o código-fonte disponível ou quando criar esses utilitários é complicado.