Como observado nos comentários, o problema é devido ao buffering. O que você pode fazer é executar o comando com stdbuf
conforme mostrado aqui .
stdbuf -i0 -o0 -e0 tail -f /tmp/test | grep Killed | cut -c -43
Em nota lateral, você provavelmente pode se livrar de grep
e cut
pipeline e usar:
stdbuf -i0 -o0 -e0 tail -f /tmp/test | awk '/Killed/{print substr($0,length($0)-43)}'