258 votes

Comment augmenter le tampon de défilement dans une session screen en cours d'exécution?

Disons que j'ai une session screen actuellement en cours d'exécution avec laquelle j'interagis via Putty. J'ai réalisé que le tampon de défilement est trop petit et j'aimerais l'augmenter sans démarrer une nouvelle session screen.

Y a-t-il un moyen de faire cela?

4 votes

Au cas où quelqu'un voudrait augmenter le tampon de défilement lorsqu' en démarrant une nouvelle session : screen -h

398voto

Lee Netherton Points 4712

Appuyez sur Ctrl+A, puis : et ensuite tapez

scrollback 10000

pour obtenir un tampon de 10000 lignes, par exemple.

Vous pouvez également définir le nombre par défaut de lignes d'historique en ajoutant

defscrollback 10000

dans votre fichier ~/.screenrc.

Pour faire défiler (si votre terminal ne vous le permet pas par défaut), appuyez sur Ctrl+A, puis sur Esc et faites défiler (avec les commandes habituelles Ctrl+F pour la page suivante ou Ctrl+A pour la page précédente, ou simplement avec la molette de votre souris / deux doigts). Pour sortir du mode de défilement, appuyez simplement sur Esc.

Autre astuce: Ctrl+A, puis I affiche votre paramètre de tampon actuel.

9 votes

+1 pour l'astuce avec le définition de la fonction defscrollback qui est définie à 1024 dans Ubuntu 12.10 (que je dois utiliser au travail).

2 votes

byobu-screen sur Ubuntu 12.04 semble définir le defscrollback à 10000

4 votes

Je voulais souligner que si votre screenrc ouvre des termes supplémentaires pour vous, vous devez mettre le defscrollback avant l'ouverture des fenêtres, sinon elles obtiendront simplement la valeur par défaut 1024.

199voto

Frédéric Hamidi Points 123646

La page de manuel explique que vous pouvez entrer en mode ligne de commande dans une session en cours en tapant Ctrl+A, :, puis en émettant la commande scrollback .

6 votes

Vous devrez le faire pour chaque fenêtre de l'écran actuel individuellement.

2 votes

Où est le nombre de lignes d'historique de défilement

0 votes

Si vous constatez que vous avez atteint le tampon maximal par défaut et que vous ne pouvez pas afficher plus d'historique, et que le réglage par scrollback ne vous aide pas à étendre le tampon, vous devez refaire la dernière commande pour obtenir tout l'historique du tampon.

13voto

Allal Mohamed Points 1182

Comme déjà mentionné, nous avons deux façons.

Réglage interactif par écran (session)

Et cela se fait de manière interactive et prend effet immédiatement.

CTRL + A suivi de : Et nous tapons scrollback 1000000 Et appuyons sur ENTER

Vous vous détachez de l'écran et revenez, il sera toujours le même.

Vous ouvrez un nouvel écran, et la valeur est à nouveau réinitialisée à la valeur par défaut. Donc ce n'est pas un paramètre global!

Et le réglage par défaut permanent

Qui est fait en ajoutant defscrollback 1000000 à .screenrc (dans home)

defscrollback et pas scrollback (def représente default)

Ce que vous devez savoir, c'est que si le fichier n'est pas créé, Vous le créez !

> cd ~ && vim .screenrc

Et vous ajoutez defscrollback 1000000 dedans.

Ou en une seule commande

> echo "defscrollback 1000000" >> ~/.screenrc

(si non créé déjà)

Prise d'effet

Lorsque vous ajoutez le paramètre par défaut à .screenrc, l'écran déjà en cours d'exécution au ré-attachement n'en tiendra pas compte ! Le .screenrc s'exécute lors de la création de l'écran, et cela a du sens ! Tout comme avec une console normale et un lancement du shell.

Tous les nouveaux écrans créés auront la valeur définie.

Vérifier la taille effective du tampon de l'écran

Pour vérifier, tapez CTRL + A suivi de i

Et le résultat sera comme suit

saisir la description de l'image ici

Il est important de noter que la taille du tampon est le nombre après le signe +
(dans l'illustration je l'ai réglée à 1 000 000)

Remarquez également que lorsque vous le modifiez de manière interactive. L'effet est immédiat et remplace la valeur par défaut.

Défilement

CTRL + A suivi de ESC (pour entrer en mode copie).

Ensuite, naviguez avec Haut, Bas ou PgHaut PgBas

Et ESC à nouveau pour quitter ce mode.

(Information supplémentaire : pour copier, appuyez sur ENTER pour commencer la sélection, puis ENTER à nouveau pour copier, simple et cool)

Maintenant le tampon est plus grand!

Et voilà pour les détails importants.

0 votes

Formidable de connaître les étapes pour faire défiler !

0 votes

Merci. appris un nouveau truc pour vérifier la taille du tampon d'écran en utilisant: CTRL + A suivi de i

11voto

Il y a une quantité minimale de tampon "par défaut" lorsque vous démarrez une session 'screen' dans votre session 'putty'. J'utilise beaucoup les écrans dans mon travail, donc je peux vous dire que vous n'aurez pas une combinaison de tampon 'screen' et de tampon 'putty' dans votre session 'screen'.

La définition du nombre par défaut de lignes de défilement en ajoutant defscrollback 10000 à votre fichier ~/.screenrc est la solution correcte.

En passant, j'utilise "defscrollback 200000" dans mon fichier ./screenrc.

8voto

1GLENCo Points 41
AVERTISSEMENT : définir cette valeur trop élevée peut causer un important accroc à votre système. 
Plus vous augmentez la valeur, plus de mémoire virtuelle est allouée au processus d'écran lors de l'initialisation de la session d'écran. 

J'ai réglé mon ~/.screenrc sur "defscrollback 123456789" et lorsque j'ai lancé un screen, tout mon système s'est gelé pendant environ 10 minutes avant de revenir au point où j'ai pu tuer le processus de screen (qui consommait alors 16,6 Go de mémoire VIRT).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X