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ù se termine la sortie de la commande précédente et où commence la sortie de la commande en cours.
Y a-t-il un moyen de vraiment effacer le terminal afin que je ne voie pas les résultats des commandes précédentes?
Oui, la commande que vous recherchez est
reset
Contrairement à clear
, ou Ctrl+L, reset
va réellement réinitialiser complètement le terminal , au lieu d’effacer tout simplement l’écran. Cependant, il ne réinstanciera pas le shell (bash). Cela signifie que l'état de de bash est le même qu'avant, comme si vous effaciez simplement l'écran.
Comme @Wallacoloo le mentionne dans les commentaires, cette commande devrait faire la même chose plus rapidement:
tput reset
Des autres réponses:
Vous pouvez définir un raccourci clavier sur reset
le terminal, comme expliqué par towolf .
Si vous utilisez Kubuntu et que votre terminal est Konsole, vous devez accéder à Édition → Effacer l'historique , puisque reset
ne fonctionne pas de la même manière, comme le note UncleZeiv .
Je cherchais cela pendant un moment et j'ai trouvé un génie qui a posté ceci:
clear && printf '\e[3J'
Efface tout le tampon d'écran, très propre. Fonctionne sous OS X et pense que cela fonctionne bien sur la plupart des terminaux * nix.
Pour les curieux, cette partie '\e[3J'
est une commande d'échappement terminal.
Vous pouvez aussi assigner un raccourci dans gnome-terminal en allant dans Édition → Raccourcis clavier. j'utiliseShift+Ctrl+Alt+C.
lancez cette commande:
reset
Cela a le même effet que de lancer un nouveau terminal.
Cross poster ma réponse de stackoverflow .
Utilisez la commande suivante pour faire un écran clair au lieu d'ajouter simplement de nouvelles lignes ...
printf "\033c"
oui c'est un 'printf' sur l'invite bash.
Vous voudrez probablement définir un alias cependant ...
alias cls='printf "\033c"'
\033 == \x1B == 27 == ESC
Donc, cela devient <ESC>c
qui est le code d'échappement VT100 pour réinitialiser le terminal. Here Voici quelques informations supplémentaires sur les codes d'échappement du terminal.
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
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 de défilement de ici .
Mon préféré est printf "\ec"
. Cela peut aussi être printf "\033c"
ou printf "\x1bc"
. C’est une séquence d’échappement ansi qui efface miraculeusement l’écran et le tampon de la sortie du terminal (pour la plupart des terminaux standard dans lesquels j’ai travaillé, il semble - je sais que cela fonctionne comme gnome-terminal, terminateur, xterm, etc. sur Ubuntu-like Linux)
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 "\033c
. printf "\ec"
a toujours fonctionné pour moi.
De plus, dans mon .bashrc
, j'ai une liaison comme celle-ci:
bind -x '"\C-t": printf "\ec"';
Maintenant je presse ctrlt tout le temps.
Cela 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
name__, il s'agit de Edit > Clear History
.
J'ai trouvé les éléments suivants assez réussis avec Kubuntu:
alias clc="echo -en '\033c\033[3J'"
Vous pouvez utiliser cls
pour vous en tenir à la tradition Windows, utilisez la version de Matlab clc
ou l'une des vôtres. Bonne chance!
Une autre alternative à la réponse @ Hibou57:
# The Octal Way
alias clear="echo -e '\033c\c'"
OR
# The Hex Way
alias clear="echo -e '\x1b\c'"
Fondamentalement, cela aura exactement le même effet, il imprimera le caractère ^[
(qui effacera votre terminal) et ne produira pas la nouvelle ligne de fin.
À la place de reset
, vous pouvez faire echo -e "\033c"
ou avoir dans votre .bashrc
quelque chose comme alias cls="echo -ne '\033c'"
UNIX/Linux StackExchange comporte un fil conducteur sur ceci: Comment effacer complètement le terminal? (Unix.stackexchange.com) , ainsi que SuperUser: Effacer le terminal à l’aide du raccourci clavier (superutilisateur. com) .
Si vous utilisez yakuake ou Konsole, essayez Ctrl+Shift+K.