Isso funciona com o shell Bash:
secs=$((5 * 60))
while [ $secs -gt 0 ]; do
echo -ne "$secs3[0K\r"
sleep 1
: $((secs--))
done
O caractere especial \ 033 [OK representa um fim de linha que limpa o restante da linha se houver caracteres remanescentes da saída anterior e \ r for uma retorno que move o cursor para o início da linha. Há um tópico interessante sobre esse recurso em stackoverflow.com .
Você pode adicionar comandos próprios ou o que quer que seja no loop while. Se você precisar de algo mais específico, forneça mais detalhes.