98 votes

Quelles commandes puis-je utiliser pour réinitialiser et effacer mon terminal ?

J'ai utilisé la commande :

reset

pour nettoyer mon terminal. Bien que je sois pratiquement sûr que ce n'est pas ce que je devrais faire. Reset, comme son nom l'indique, réinitialise tout votre terminal (change beaucoup de choses). Voici ce que je veux :

En gros, je veux utiliser la commande clear . Cependant, si vous effacez et faites défiler vers le haut, vous obtenez encore des tonnes de choses d'avant. En général, ce n'est pas un problème, mais je regarde des journaux bruts qui sont longs et je veux être sûr que je ne regarde que le plus récent. Je sais que je pourrais utiliser more ou quelque chose comme ça, mais je préfère cette approche.

72voto

Chris Nokleberg Points 151

Le scrollback buffer n'est pas une fonctionnalité de bash mais du programme terminal. Vous n'avez pas dit quel terminal vous utilisez.

Si vous utilisez xterm, vous pouvez effacer les lignes enregistrées en envoyant ESC-c au terminal.

Cela peut fonctionner ou non avec le programme de terminal que vous utilisez.

Sous linux, cela fonctionnera probablement :

echo -e '\0033\0143'

sous FreeBSD, echo n'accepte pas -e, vous pouvez donc essayer :

printf '\033\143'

65voto

Arun Seehra Points 23

Utilisez le bon outil pour chaque tâche :

  • 使用方法 clear pour effacer la fenêtre du terminal.

  • 使用方法 reset pour réinitialiser votre terminal lorsqu'il est perturbé par des séquences de contrôle.

  • 使用方法 cat uniquement lorsque vous souhaitez transmettre un grand nombre de données d'un endroit à un autre. ininterrompu .

  • 使用方法 head pour ne diffuser que les premières séquences (vous pouvez choisir le nombre de séquences avec la touche -n ) lignes de texte en sortie.

  • Utilisez un programme de téléavertisseur tel que less o most pour voir les pages de sortie.

  • 使用方法 tail -f /var/log/foo.log /var/log/bar.log pour regarder plusieurs fichiers journaux différents.

    • Avec GNU tail le -F est meilleure car elle peut continuer à suivre le fichier même si un nouveau fichier apparaît à sa place, comme c'est souvent le cas pour les fichiers journaux.

33voto

decibel Points 341

Juste pour fournir la réponse technique : reset réinitialiser le terminal, comme s'il avait été rouvert depuis le début. stty sane fera une grande partie de la même fonctionnalité (sans la réinitialisation). C'est la même chose que ^L (Ctrl+L) (irrc), et tput clear . Malgré ce qu'a dit l'affiche précédente (@grawity), clear ne produit pas un tas de nouvelles lignes. Il envoie le TERM comme défini dans terminfo o termcap pour moi, en utilisant gnome-terminal (xterm), c'est la même chose que la commande perl -e'print "\33[H\33[2J"' .

Si vous voulez juste effacer la mémoire tampon - plutôt que de réinitialiser l'ensemble du terminal, essayez ceci tput reset . Il s'agit de devrait être très rapide, et faire ce que vous voulez. (Bien que vous devriez vraiment lire les fichiers avec less )

tput reset envoie la valeur terminfo pour la réinitialisation -- sur mon terminal (xterm), c'est la même chose que perl -e'print "\33c"'

12voto

Sam Mason Points 243

Un autre terminal est iTerm2, et il a une séquence d'échappement quelque peu étrange utilisée pour effacer le scrollback. Dans un Shell Bash, j'utilise quelque chose comme :

echo -ne '\033]50;ClearScrollback\a'

dans un script. En gros, c'est un caractère ESC, suivi de " ]50;ClearScrollback "et ensuite un caractère BEL.

9voto

James Mertz Points 390

La meilleure façon de tout effacer est sans doute d'utiliser la fonction du terminal :

  • Konsole : Ctrl + Shift + K Effacement de la vue Défilement et réinitialisation
  • Terminal GNOME : Modifier, réinitialiser et effacer
  • PuTTY : Ctrl + right-click Clear Scrollback

De cette façon, les deux buffers sont nettoyés, et l'état du terminal est réinitialisé à ce qu'il était au démarrage (ce qui peut être ou non la même chose que d'utiliser la fonction reset ).

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X