Je peux émettre le clear commande ou appuyez 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 touches il est difficile de distinguer où se termine la sortie de la commande précédente et où commence la sortie de la commande actuelle.
Y a-t-il un moyen de vraiment effacer le terminal pour que je ne voie pas les résultats de la commande précédente?
Contrairement à clear, ou Ctrl+L, reset va en fait complètement réinitialiser le terminal, au lieu de simplement effacer l'écran. Cependant, il ne ré-instanciera pas le shell (bash). Cela signifie que bash état est le même qu'avant, tout comme si vous effaciez simplement l'écran.
Comme @ Ponkadoodle le mentionne dans les commentaires, cette commande devrait faire le la même chose plus rapidement:
tput reset
Des autres réponses:
Vous pouvez définir un Raccourci Clavier de reset le terminal, comme expliqué par towolf.
Si tu cours Kubuntu, et votre terminal est Konsole, vous devez aller à Modifier → Effacer l'historique, depuis reset ne fonctionne pas de la même manière là-bas, comme le note UncleZeiv.
Utilisez la commande suivante pour effacer l'écran 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"'
Explication
\033 == \x1B == 27 == ESC
Donc cela devient <ESC>c qui est le code d'échappement VT100 pour réinitialiser le terminal. Ici y a-t-il plus d'informations sur les codes d'échappement des terminaux.
Modifier
Voici quelques autres façons de le faire...
printf "\ec" #\e is ESC in bashecho -en "\ec" #thanks @Jonathon Reinhart.# -e Enable interpretation of of backslash escapes# -n Do not output a new line
OÙ
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 scroll-back clearing 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 pour la sortie du terminal (pour la plupart des terminaux standard dans lesquels j'ai travaillé, il semble - je sais que cela fonctionne dans des terminaux tels que gnome-terminal, terminator, xterm, etc. sur les Linuxes de type Ubuntu)
Je sais que cela fonctionne sous 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 travaillé pour moi.
De plus, dans mon .bashrc J'ai une reliure comme celle-ci:
Eh bien, cela dépend vraiment, si vous utilisez Konsole par exemple, même reset cela ne vous empêche pas de faire défiler au-delà de la première ligne. Dans ce cas, vous devez utiliser certaines fonctionnalités du terminal particulier que vous utilisez. Pour Konsole, c'est Edit > Clear History.
Voici toutes les façons dont vous pouvez effacer l'écran du terminal sous Unix:
clear # only clear visible screenclear && clear # clear buffer as welltput clear # same as clear but by sending escape seqreset # clear + reset internal terminal state + 1sec delaytput reset # same as reset but without 1sec delaystty sane # don't clear screen but reset some terminal optionsecho -e "\033c" # same as tput reset but hardcoded escape seqprintf "\033c" # same as tput reset but hardcoded escape seqsetterm -reset # same as tput reset, setterm has friendlier commands