A saída do echo
no loop while
é sempre unbuffered. Se você remover a opção -n
, verá as linhas que contêm os pontos que aparecem a cada segundo.
Parece que less
sempre tenta ler uma linha completa e não a exibe até chegar ao fim da linha ou ao final do arquivo. Não parece haver uma opção para mudar isso.