Sie können tput
den Cursor auf eine bestimmte Zeile im Bildschirm bewegen, z.
tput cup 11 0
um es in die zwölfte Zeile zu verschieben (Werte zählen von Null).
In diesem Sinne können Sie tput
mithilfe der ed
Funktion von dieser Position bis zum Ende des Bildschirms löschen . Kombinieren,
tput cup 11 0 && tput ed
könnte sein, was gewollt war.
Wenn Sie zur halben Markierung auf dem Bildschirm wechseln möchten, wird die erste Zahl von zurückgegeben
stty size
ist (auf den meisten Systemen) die Anzahl der Bildschirmzeilen. Hinzufügen des Befehls zum Befehl:
tput cup $(stty size|awk '{print int($1/2);}') 0 && tput ed
Das clear
Programm unterscheidet sich von tput ed
:
- es bewegt den Cursor in die Heimat Position (oben links) und
- wird von diesem Punkt bis zum Ende des Bildschirms gelöscht.
Vorsichtsmaßnahme: Auf einigen Plattformen tput ed
funktioniert dies möglicherweise aufgrund von Problemen, die vor langer Zeit behoben wurden, nicht. In diesen Fällen wird das Problem durch ein Upgrade Ihrer Curses / Ncurses-Konfiguration behoben.
Wenn die Zeilenanzahl ungerade ist, wird
tput cup
die gesamte Seite gelöscht.Wenn Sie es so schreiben, sollte dies Folgendes beheben:
quelle
Wenn Sie daran interessiert sind, die untere Hälfte des Bildschirms zu löschen, während Sie den Rest beibehalten, funktioniert dies:
BEARBEITEN: Wenn Sie
seq $(stty size | cut -d' ' -f1)
die anderen Antworten ausführen, wird die erste Hälfte der Ausgabe verlassen, während dieser Befehl die zweite Hälfte (dh die letzte Ausgabe) verlässt.quelle