Comment vraiment effacer le terminal?

320

Je peux émettre la commande clear ou appuyer sur Ctrl + L pour effacer le terminal Ubuntu actuel, mais cela déplace simplement la sortie précédente vers le haut et si vous utilisez le défilement de la souris ou PgUP et PgDown clés il est difficile de distinguer où la sortie de la commande précédente se termine et la sortie de la commande en cours commence.

Y a-t-il un moyen de vraiment effacer le terminal pour ne pas voir les résultats des commandes précédentes?

    
posée Stann 06.02.2011 - 22:51
la source

11 réponses

390

Oui, la commande que vous recherchez est

reset

Contrairement à clear ou Ctrl + L , reset réinitialisera complètement le terminal , au lieu de simplement effacer l'écran. Cependant, il ne ré-instanciera pas le shell (bash). Cela signifie que l'état de bash est le même que précédemment, comme si vous ne faisiez que vider l'écran.

Comme @Wallacoloo le mentionne dans les commentaires, cette commande devrait faire la même chose plus rapidement:

tput reset

Parmi les autres réponses:

  • Vous pouvez définir un raccourci clavier sur reset le terminal, sous la forme expliquée par towolf .

  • Si vous exécutez Kubuntu et que votre terminal est Konsole, vous devez accéder à Modifier → Effacer l'historique , car reset ne le fait pas. fonctionne de la même manière, comme des notes UncleZeiv .

réponse donnée Stefano Palazzo 06.02.2011 - 22:55
la source
75

Je cherchais ça depuis un moment et j'ai trouvé un génie qui a posté ceci:

clear && printf '\e[3J'

Efface tout le tampon de l'écran, très propre. Fonctionne sous OS X et pense que cela fonctionne bien sur la plupart des terminaux * nix.

Pour curieux, cette partie '\e[3J' est une commande d'échappement de terminal.

    
réponse donnée Goran 29.05.2014 - 07:51
la source
37

Vous pouvez également attribuer un raccourci dans gnome-terminal en accédant à Éditer → Raccourcis clavier . J'utilise Shift + Ctrl + Alt + C .

    
réponse donnée towolf 08.02.2011 - 23:46
la source
15

exécutez cette commande:

reset

Cela a le même effet que de lancer un nouveau terminal.

    
réponse donnée dv3500ea 06.02.2011 - 22:55
la source
8

Transférer ma réponse depuis stackoverflow .

Utilisez la commande suivante pour faire un écran clair au lieu de simplement ajouter de nouvelles lignes ...

printf "3c"

oui c'est un "printf" à l'invite bash.

Vous voudrez probablement définir un alias si ...

alias cls='printf "3c"'

Explication

3 == \x1B == 27 == ESC

Cela devient donc <ESC>c qui est le code d'échappement VT100 pour réinitialiser le terminal. Ici , vous trouverez des informations supplémentaires sur les codes d’échappement du terminal.

Modifier

Voici quelques autres façons de le faire ...

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

Ce qui précède ne fonctionne pas sur la console KDE (appelée Konsole) mais il y a de l'espoir! Utilisez la séquence de commandes suivante pour effacer l'écran et le tampon de défilement arrière

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

Ou peut-être utiliser l'alias suivant sur KDE ...

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

J'ai reçu la commande d'effacement par défilement de ici .

    
réponse donnée Sandeep Datta 13.10.2015 - 10:08
la source
5

Eh bien ça dépend vraiment, si vous utilisez Konsole par exemple, même reset ne vous empêche pas de faire défiler la première ligne. Dans ce cas, vous devez utiliser certaines fonctionnalités du terminal que vous utilisez. Pour Konsole , c'est Edit > Clear History .

    
réponse donnée UncleZeiv 07.02.2011 - 17:27
la source
5

Mon préféré est printf "\ec" . Cela peut également être printf "3c" ou printf "\x1bc" . C'est une séquence d'échappement ansi qui efface miraculeusement l'écran et la mémoire tampon pour la sortie du terminal (pour la plupart des terminaux standard sur lesquels j'ai travaillé, je sais que cela fonctionne comme gnome-terminal, terminator, xterm, etc.). Linuxes)

Je sais que cela fonctionne dans Linux Mint et Ubuntu 14.04, donc je ne sais pas pourquoi les gens ajoutent et préparent des choses comme clear && echo -ne "3c . printf "\ec" a toujours travaillé pour moi.

En outre, dans mon .bashrc j'ai une liaison comme celle-ci:

bind -x '"\C-t": printf "\ec"';

Maintenant, j'appuie sur ctrl t tout le temps.

    
réponse donnée dylnmc 01.05.2015 - 11:32
la source
3

J'ai trouvé ce qui suit pour réussir avec Kubuntu:

alias clc="echo -en '3c3[3J'"

Vous pouvez utiliser cls pour conserver la tradition Windows, utiliser la version de Matlab clc ou une de vos versions. Bonne chance!

    
réponse donnée Charles Bell 30.04.2015 - 00:26
la source
2

Alternativement à reset , vous pouvez faire echo -e "3c" , ou avoir dans votre .bashrc , quelque chose comme alias cls="echo -ne '3c'"

UNIX / Linux StackExchange, a un fil sur ceci: Comment effacer complètement le terminal ? (unix.stackexchange.com) , ainsi que SuperUser: Effacer le terminal à l'aide du raccourci clavier (superuser.com) .

    
réponse donnée Hibou57 09.07.2014 - 10:55
la source
2

Une autre alternative à la réponse @ Hibou57:

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

OU

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

Fondamentalement, cela aura exactement le même effet, elle imprimera le caractère ^[ (qui efface votre terminal) et ne génère pas la nouvelle ligne de fin.

    
réponse donnée TwystO 30.10.2014 - 22:26
la source
1

Si vous utilisez yakuake ou Konsole, essayez Ctrl + Shift + K .

Source: lien

    
réponse donnée Wojciech Sidor 06.10.2015 - 18:21
la source

Lire d'autres questions sur les étiquettes