Use tput sc
tput ed
e tput rc
.
tput sc
Save the cursor position
tput rc
Restore the cursor position
tput ed
Clear to end of screen
Exemplo:
tput sc; while [ true ]; do tput ed; echo -e "$SECONDS\n$SECONDS\n$SECONDS"; sleep 1; tput rc; done
Como funciona?
- Armazena a posição do cursor com
tput sc
- Insere o loop que atualizará as informações na tela
-
tput ed
limpa até o final da tela para garantir resultado adequado - Então, as várias linhas de alteração de dados são gravadas com
echo
-
sleep 1
espera um segundo antes de atualizar -
tput rc
move o cursor de volta para o começo das linhas que acabamos de imprimir - loop repete sobrescrevendo com novas informações