¿Cómo despejar realmente la terminal?

Puedo emitir el comando de clear o presionar Ctrl + L para borrar el terminal de Ubuntu actual, pero esto solo desplaza la salida anterior hacia arriba y si usa el mouse o las teclas PgUP y PgDown es difícil distinguir dónde termina la salida del comando anterior y la salida de el comando actual comienza.

¿Hay alguna manera de limpiar realmente el terminal para que no vea los resultados de los comandos anteriores?

Sí, el comando que estás buscando es

 reset 

En contraste con clear , o Ctrl + L , el reset realmente reinicializará completamente el terminal , en lugar de simplemente borrar la pantalla. Sin embargo, no volverá a crear una instancia de la shell (bash). Eso significa que el estado de bash es el mismo que antes, como si solo estuvieras limpiando la pantalla.

Como @Wallacoloo menciona en los comentarios, este comando debería hacer lo mismo más rápidamente:

 tput reset 

De las otras respuestas:

  • Puede configurar un método abreviado de teclado para reset el terminal, como lo explica towolf .

  • Si está ejecutando Kubuntu y su terminal es Konsole, debe ir a Editar → Borrar historial , ya que el reset no funciona de la misma manera que las notas de UncleZeiv .

Estuve buscando esto por un tiempo y encontré un genio que publicó esto:

 clear && printf '\e[3J' 

Borra todo el buffer de pantalla, muy limpio. Funciona en OS X y cree que funciona bien en la mayoría de los terminales * nix.

Por curiosidad, esta parte '\e[3J' es un comando de escape de terminal.

También puede asignar un acceso directo en gnome-terminal yendo a Editar → Atajos de teclado . Yo uso Shift + Ctrl + Alt + C.

restablecer y borrar atajo

ejecute este comando:

 reset 

Esto tiene el mismo efecto que lanzar un nuevo terminal.

Publicación cruzada de mi respuesta desde stackoverflow .

Use el siguiente comando para hacer una pantalla clara en lugar de simplemente agregar nuevas líneas …

 printf "\033c" 

sí, eso es un ‘printf’ en el indicador de bash.

Probablemente querrás definir un alias aunque …

 alias cls='printf "\033c"' 

Explicación

 \033 == \x1B == 27 == ESC 

Así que esto se convierte en c que es el código de escape VT100 para restablecer el terminal. Aquí hay más información sobre los códigos de escape de la terminal.

Editar

Aquí hay algunas otras formas de hacerlo …

 printf "\ec" #\e is ESC in bash echo -en "\ec" #thanks @Jonathon Reinhart. # -e Enable interpretation of of backslash escapes # -n Do not output a new line 

KDE

¡Lo anterior no funciona en la consola KDE (llamada Konsole) pero hay esperanza! Utilice la siguiente secuencia de comandos para borrar la pantalla y el búfer de retroceso …

 clear && echo -en "\e[3J" 

O quizás use el siguiente alias en KDE …

 alias cls='clear && echo -en "\e[3J"' 

Tengo el comando de limpieza de desplazamiento hacia atrás desde aquí .

Mi favorito es printf "\ec" . Esto también puede ser printf "\033c" o printf "\x1bc" . Esa es una secuencia de escape ansi que limpia milagrosamente la pantalla y el búfer para la salida del terminal (para la mayoría de los terminales estándar en los que he trabajado, parece que funciona en gnome-terminal, terminator, xterm, etc. en Ubuntu) Linuxes)

Sé que esto funciona en Linux Mint y Ubuntu 14.04, así que no sé por qué la gente está agregando y preparando cosas como clear && echo -ne "\033c . clear && echo -ne "\033c printf "\ec" siempre me ha funcionado.

Además, en mi .bashrc tengo un enlace como este:

 bind -x '"\Ct": printf "\ec"'; 

Ahora presiono ctrl t todo el tiempo.

Bueno, realmente depende, si está utilizando Konsole por ejemplo, incluso el reset no le impide desplazarse más allá de la primera línea. En ese caso, tiene que usar alguna característica del terminal particular que está usando. Para Konsole , es Edit > Clear History .

He encontrado que lo siguiente es bastante exitoso con Kubuntu:

 alias clc="echo -en '\033c\033[3J'" 

Puede usar cls para mantener la tradición de Windows, usar el clc versión de Matlab o uno de los suyos. ¡Buena suerte!

Alternativamente, para reset , puedes hacer echo -e "\033c" , o tener en tu .bashrc , algo como alias cls="echo -ne '\033c'"

El UNIX / Linux StackExchange, tiene un hilo en esto: ¿Cómo borrar el terminal completamente? (unix.stackexchange.com) , así como SuperUser: Borrar terminal con el método abreviado de teclado (superuser.com) .

Otra alternativa a la respuesta @ Hibou57:

 # The Octal Way alias clear="echo -e '\033c\c'" 

O

 # The Hex Way alias clear="echo -e '\x1b\c'" 

Básicamente, esto tendrá exactamente el mismo efecto, imprimirá el ^[ carácter (que borra su terminal) y no genera la línea nueva al final.

Si está utilizando yakuake o Konsole, pruebe Ctrl + Shift + K.

Fuente: https://bugs.kde.org/show_bug.cgi?id=309008