Comment puis-je effacer partiellement mon terminal en défilement?

40

Je souhaite effacer partiellement l'historique de défilement du terminal, mais uniquement à partir de l'endroit où j'ai sélectionné avec la souris dans le défilement et vers le haut. Est-ce possible? Je suis sur un Mac et j'utilise iTerm2 et Terminal.

Javid Jamae
la source
1
bashn'a aucune notion de scrollback; c'est quelque chose que votre émulateur de terminal gère.
Chepner
@ chepner - ok, bon point. Je viens de reformuler la question pour ne pas parler de bash.
Javid Jamae

Réponses:

80

Vous n'êtes pas sûr de ne savoir que partiellement, mais vous pouvez complètement effacer votre défilement avec Cmd+ K. Control+ Leffacera uniquement l'écran, pas le contenu / l'historique / la mémoire tampon du défilement.

Si vous voulez assez le défilement partiel, ce serait probablement l'endroit pour le mettre en œuvre.

Luqmaan
la source
1
Merci, mais bon sang, c'est du code méchant! Je ne pense pas que je veuille jamais si mal que je devrais entrer dans cette base de code. :-)
Javid Jamae
26

Si d’autres arrivent ici à la recherche d’une séquence d’échappement telle que command-K dans iTerm 2, vous pouvez utiliser

printf '\e]50;ClearScrollback\a'

printf '\ec'et clear;printf '\e[3J'travaillez dans Terminal mais pas dans iTerm 2.

Lri
la source
1
Qu'est-ce que cela a à voir avec l'effacement partiel du défilement?
Javid Jamae
11
Cette question figurait parmi les meilleurs résultats de Google pour iterm clear scrollback.
Lri
cela fera clignoter le texte si vous imprimez immédiatement ce que vous venez d'effacer. mais ça marche!
Andy
Ceci est exactement ce que je cherchais. Je voudrais pouvoir vous inviter deux fois!
Zeki
OP veut un défilement partiel, qui, autant que je sache, n’est pas disponible.
Dylan_Larkin
0

Ce n'est pas possible, mais vous pouvez effacer l'écran uniquement en appuyant sur Control+ L.

Mark Stewart
la source
-1

Cette commande vous donnera probablement les fichiers d’historique possibles. Vous pouvez l'ouvrir dans un éditeur de texte et le modifier.

ls -a ~ | grep hist
iozozturk
la source
Bienvenue sur Super User! Veuillez relire la question - OP pose des questions sur le défilement, pas sur l’histoire.
Bertieb
-3

Si j'ai bien compris votre question, je pense que vous pouvez y parvenir en modifiant manuellement le fichier historique, ~/.bash_history.

PS: Afin de sauvegarder votre session en cours, vous devez d’abord fermer le terminal.

dezzeus
la source
4
Non, je pense que vous avez mal compris. Le fichier .bash_history est destiné à l'historique des commandes, pas à l'historique de défilement du terminal.
Javid Jamae