Usar tail -f test.txt | awk '/Beam/{print $3}'
funciona para mim. Além de usar tail -f test.txt | grep --line-buffered Beam | awk '{print $3}'
(gnu grep).
O problema aqui é se awk
recebeu os dados linha por linha ou como um bloco de dados maior. A versão GNU do grep envia a saída em blocos maiores, já que é mais eficiente, mas awk
precisa ler linha por linha para poder sair linha por linha.
Coloque desta forma: grep
só enviará dados quando o buffer estiver cheio, o awk está esperando que o buffer seja preenchido, então está enviando nada.