Sé que hay comandos como \! clear
,, system clear
que se usan ctrl + l
en la terminal para borrar la terminal.
Pero me doy cuenta claramente de que solo está dejando un espacio y todos los resultados anteriores todavía están en la parte superior, por lo que cuando nos desplazamos todavía veremos los resultados de los comandos anteriores.
Lo que me pregunto es si hay un comando para limpiar totalmente la terminal que es nueva, como abrir una nueva terminal, que cuando me desplazo hacia arriba solo mostrará los resultados de la acción actual.
Respuesta1
Utilice el comando "\! reset". A diferencia de borrar, o Ctrl+L, restablecer en realidad reinicializará completamente el terminal, en lugar de simplemente borrar la pantalla. Sin embargo, no volverá a crear una instancia del shell (bash). Eso significa que el estado de bash es el mismo que antes, como si simplemente estuvieras limpiando la pantalla.
Respuesta2
Puedes usar tput reset
.
Además reset
, tput reset
puedes utilizar el siguiente script de shell.
#!/bin/sh
echo -e \\033c
Esto envía los caracteres de control Esc-C a la consola que reinicia el terminal.
Google Keywords: Linux Console Control Sequences
hombre console_codes dice:
La secuencia ESC c provoca un reinicio del terminal, que es lo que desea si la pantalla está confusa. El "eco ^V^O" tan recomendado sólo hará que G0 sea actual, pero no hay garantía de que G0 apunte a la tabla a). En algunas distribuciones hay un programa reset(1) que simplemente hace "eco ^[c". Si su entrada terminfo para la consola es correcta (y tiene una entrada rs1=\Ec), entonces "tput reset" también funcionará.
referencia:https://unix.stackexchange.com/questions/26975/how-to-clear-terminal-completely