Puede usar tputpara mover el cursor a una línea determinada en la pantalla, por ejemplo,
tput cup 11 0
para moverlo a la duodécima línea (los valores cuentan desde cero).
En la misma línea, puede usar tputpara borrar desde esa posición hasta el final de la pantalla, utilizando la edcapacidad. Combinatorio,
tput cup 11 0 && tput ed
podría ser lo que se quería.
Si desea ir a la mitad de la pantalla, el primer número devuelto por
stty size
es (en la mayoría de los sistemas) el número de filas de la pantalla. Agregando eso al comando:
tput cup $(stty size|awk '{print int($1/2);}') 0 && tput ed
El clearprograma difiere de tput ed:
- mueve el cursor a la posición de inicio (arriba a la izquierda) y
- se borra desde ese punto hasta el final de la pantalla.
Advertencia: en algunas plataformas tput edpuede no funcionar debido a problemas solucionados hace mucho tiempo. En esos casos, la actualización de la configuración de curses / ncurses solucionará el problema.