49 votes

Comment conserver la division de Windows après avoir détaché/réattaché l'écran GNU ?

J'utilise screen dans un serveur Ubuntu.

Mon écran est divisé en quatre régions, chacune affichant une fenêtre différente.

Le problème est que lorsque je détache (ou peut-être rattache), j'obtiens les quatre fenêtres mais seulement une région et je dois faire C-a S à nouveau ?

Comment faire pour que mon écran reste divisé lorsqu'il est rattaché ?

84voto

Troy Points 841

J'ai découvert que si vous avez déjà configuré certaines fenêtres et que vous souhaitez les sauvegarder, vous pouvez le faire :

Ctrl-a
:
layout save default

Ensuite, lorsque vous vous détachez et vous rattachez à la session, la présentation devrait être rétablie.

Fonctionne avec Screen version 4.00.03jw4 (FAU) 2-May-06 (Ubuntu 12.04 & 12.10)

Vous pouvez également créer une session deamon en tant que telle :

$> screen -dmSU mysession

et qu'il soit toujours disponible par téléphone :

$> screen -r mysession

15voto

Il suffit d'ajouter cette ligne à votre ~/.screenrc :

# This line makes Detach and Re-attach without losing the regions/windows layout
layout save default

14voto

yoshikaw Points 1416

Dans la version git, nouvelle fonctionnalité layout a été introduite.

de l'écran(1) :

mise en page nouveau [titre]

Créer une nouvelle mise en page. L'écran affiche une région entière et passe à la fenêtre vierge. À partir de là, vous construisez les régions et les fenêtres qu'elles affichent comme vous le souhaitez. La nouvelle disposition sera numérotée avec le plus petit nombre entier disponible, en commençant par zéro. Vous pouvez éventuellement donner un titre à votre nouvelle disposition. Sinon, elle portera le titre par défaut de "disposition". Vous pouvez toujours modifier le titre ultérieurement en utilisant la commande layout title.

même si vous détachez la session d'écran, la mise en page se souvient de la manière dont la région a été divisée.

par exemple, l'écran démarre avec la configuration suivante.

layout new
split
split -v
screen 0
focus next
screen 1
focus bottom
screen 2
detach

Si vous rattachez cette session, vous pourrez revenir à la disposition (dernière sélectionnée) qui comporte 3 régions divisées.

13voto

vaske Points 2468

De l'écran FAQ :

(La question implicite étant : "Comment puis-je conserver mon split Windows lors d'un détachement ?)

La réponse courte est que vous ne pouvez pas. La réponse plus longue est que vous pouvez faire semblant.

Les fractionnements sont une propriété de votre écran. Le processus qui gère votre session d'écran ne n'en a pas vraiment connaissance ; seul le processus unique qui affiche la session en a connaissance. Par conséquent, la session d'écran ne peut pas se souvenir des divisions parce qu'elle n'en a pas connaissance. et une fois que vous vous détachez, le processus qui en avait connaissance s'est arrêté.

La solution consiste à utiliser des sessions d'écran imbriquées. Démarrez une session et donnez-lui une séquence d'échappement que vous n'utiliserez pas beaucoup (ou désactivez simplement son caractère d'échappement). complètement). Attachez votre séquence de touches habituelle à cette session d'écran. [ ] démarrez ou attachez votre session d'écran principale. Tout votre travail sera effectué dans session interne, et vous pouvez diviser votre écran. [ ] la session externe se détachera, de sorte que les fractionnements effectués dans la session interne seront conservés. seront préservés.

En supposant que vous utilisiez le caractère d'échappement par défaut, C-a, votre écran alternatif screenrc devrait contenir :

escape ""
bindkey ^ad detach

6voto

Chris Buechler Points 2926

Il semble que tmux ne. Il s'agit d'un nouveau projet de multiplexeur, inspiré par screen, mais codé à partir de zéro et sous licence BSD.

(Désolé si mon anglais est inconfortable à lire :-°)

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