Screen

Screen est un multiplicateur de terminal.
Cette commande permet d'avoir plusieurs consoles au sein d'une seule.

A mon avis, l'avantage principal de cette commande, est de supprimer tous les risques liés à une déconnexion de la console principale.
Effectivement, en cas de perte de la connexion à la console, toutes les commandes en cours d'exécution sont automatiquement stoppées.
Avec screen, toutes les commandes continuent à s'exécuter.

Pour l'installer et l'utiliser, il faut obligatoirement être en mode sudo :

$ sudo apt-get install screen

Utilisation de screen

  • Pour ouvrir une console screen :

$ sudo screen -S ma_console

Exécution de screen avec l'option "-S" qui permet de nommer la nouvelle console en "ma_console".

  • Obtenir de l'aide dans screen :

Appuyer sur les touches ctrl + a puis sur shift + ?

Pour quitter l'aide, appuyer sur espace

  • Pour quitter une console screen :

Taper exit puis appuyer sur entrée

Ou appuyer sur les touches ctrl + d

  • Pour revenir à la console principale sans fermer la console screen :

Appuyer sur les touches ctrl + a puis sur d

Une fois dans la console principale, il est possible de lister les différentes consoles ouvertes avec screen sachant qu'il est tout à fait possible d'ouvrir plusieurs consoles différentes.

$ sudo screen -ls
There is a screen on:
        25065.ma_console        (14/12/12 14:48:52)     (Detached)
1 Socket in /var/run/screen/S-root.

Ci-dessus, apparait la mention "Detached" signifiant qu'une console "ma_console" est en cours d'exécution en arrière plan.

Dans le cas où il y aurait plusieurs consoles.

$ sudo screen -ls
There are screens on:
        25169.ma_console3       (14/12/12 14:54:51)     (Detached)
        25165.ma_console2       (14/12/12 14:54:45)     (Detached)
        25065.ma_console        (14/12/12 14:48:52)     (Detached)
3 Sockets in /var/run/screen/S-root.

Ci-dessus, apparait la liste de toutes les consoles en cours d'exécution avec leurs différents noms.

  • Pour retourner dans une console :

$ sudo screen -R 25065

Permet de retourner dans la console nommée "ma_console" et portant le pid "25065".

Il est important de préciser le pid de la console dans le cas où leurs noms seraient similaires (comme dans l'exemple ci-dessus : ma_console, ma_console2, ma_console3).

Sinon, le nom est suffisant.

$ sudo screen -R ma_console

  • Créer plusieurs fenêtres dans une console screen :

Il est possible de créer une multitude de fenêtres en appuyant sur les touches ctrl + a puis sur c.

La liste des fenêtres créées apparaît en bas de l'écran (0$ bash  1$ bash  2$ bash  3-$ bash  4$ bash  5$ bash  6$ bash) en appyant sur les touches ctrl + a puis sur w.

Pour passer à la fenêtre suivante, appuyer sur les touches ctrl + a puis sur n (next).
Pour retourner à la fenêtre précédente, appuyer sur les touches ctrl + a puis sur p (previous).

Pour aller à une fenêtre en particulier, appuyer sur les touches ctrl + a puis sur le chiffre correspondant (voir la liste des fenêtres en bas de l'écran).

  • Afficher plusieurs consoles screen dans une même fenêtre (split):

Dans une console screen, appuyer sur les touches ctrl + a puis sur shift + s

Une seconde fenêtre vide apparait au dessous.

Pour ouvrir une nouvelle console dans cette fenêtre vide, appuyer sur les touches ctrl + a puis sur tab.

Une fois le curseur dans la nouvelle fenêtre, appuyer sur les touches ctrl + a puis sur c.

Il est possible de spliter l'écran plusieurs fois si nécessaire.

Pour basculer d'un écran à l'autre appuyer sur les touches ctrl + a puis sur tab.

Pour supprimer la fenêtre en cours d'utilisation, appuyer sur les touches ctrl + a puis sur shift + x

Voici, à mon sens, les fonctions les plus utilses de la commande screen.

Personnalisation de screen

Il est possible de personnaliser screen avec un fichier de configuration nommé ~/.screenrc

Voici un fichier tout fait, créé par "bennyben" et que j'utilise personnellement.
Il customise vraiment bien la commande screen.

Son contenu est donc à enregistrer dans un fichier nommé ~/.screenrc

http://www.isbeta.fr/e5550

MD5SUM : a2aade4a2d4596b5df7720b3b3c3e904  screenrc.txt

Fichier attachéTaille
Plain text icon Fichier de configuration de la commande screen5.94 Ko
Etiquettes: 

Ajouter un commentaire

Filtered HTML

  • Les adresses de pages web et de messagerie électronique sont transformées en liens automatiquement.
  • Tags HTML autorisés : <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Les lignes et les paragraphes vont à la ligne automatiquement.

Plain text

  • Aucune balise HTML autorisée.
  • Les adresses de pages web et de messagerie électronique sont transformées en liens automatiquement.
  • Les lignes et les paragraphes vont à la ligne automatiquement.
CAPTCHA
Cette question permet de s'assurer que vous êtes un utilisateur humain et non un logiciel automatisé de pollupostage.
CAPTCHA visuel
Entrez les caractères (sans espace) affichés dans l'image.