Você pode usar uma leitura de bloqueio com um tempo limite para determinar quando a saída foi interrompida. Por exemplo, read
do Bash suporta um parâmetro de tempo limite. O script a seguir irá escrever uma única linha se a saída de STDIN parar por mais de 2 segundos:
#!/bin/sh
while read -r firstline; do
while read -r -t 2 line; do
continue
done
echo "---- No data in 2 seconds ----"
done
O eco pode ser redirecionado para um log diferente e o script pode ser modificado para ecoar os dados sendo lidos de acordo com o padrão, se desejado.