GNU Screen
Screen est une console virtuelle qui permet de partager un terminal en plusieurs processus. C’est un logiciel libre distribué par le projet GNU selon les termes de la licence GPL.
Développé par | Projet GNU |
---|---|
Première version | |
Dernière version | 5.0.0 ()[1] |
Dépôt | git.savannah.gnu.org/cgit/screen.git |
Écrit en | C |
Système d'exploitation | GNU/Linux, BSD et macOS |
Environnement | GNU/Linux, FreeBSD, NetBSD, OpenBSD, Mac OS X, Solaris, GNU |
Type | CLI |
Licences | GNU GPL |
Documentation | www.gnu.org/software/screen/manual |
Site web | www.gnu.org/s/screen/ |
Fonctionnalités
modifierCe programme offre une émulation de terminal ANSI/VT100 que l’on peut partager entre plusieurs pseudo-terminaux. Au démarrage, il exécute une interface système dans la première fenêtre, apprend son mode opératoire, les raccourcis clavier en lisant un fichier de configuration (.screenrc), et peut ensuite ouvrir plusieurs fenêtres. On peut dès lors l’utiliser dans un environnement graphique comme un gestionnaires de fenêtres.
Il permet à un utilisateur d’accéder à de multiples sessions de terminal à l’intérieur d’une simple fenêtre de terminal, ou d’une session distante typiquement lancée par SSH. Il s’avère donc très pratique pour gérer de multiples processus. C’est une enveloppe qui permet à plusieurs programmes en mode texte de tourner en même temps et de fournir des fonctionnalités qui permettent d’utiliser des programmes dans une seule interface.
- Persistance
- De manière similaire à VNC, screen permet à l’utilisateur de démarrer des applications (mais en mode texte) à partir d’un ordinateur, et de se reconnecter d’un autre ordinateur et ainsi continuer à utiliser la même application sans avoir à la redémarrer. Cela rend la migration possible de l’accès à la session screen entre des lieux différents comme le travail et la maison. Grâce à la bibliothèque logicielle ncurses, screen fournit des opérations génériques aux terminaux qui permettent aux utilisateurs de se déconnecter et de se reconnecter utilisant des terminaux de différents types, permettant aux applications de continuer sans avoir à se soucier du changement de terminal.
- Multiples fenêtres
- De multiples sessions de terminal peuvent être créées, chacune d’elles exécutant généralement une seule application. Les fenêtres sont numérotées et l’utilisateur peut utiliser le clavier pour passer de l’une à l’autre. Certains émulateurs de terminaux fournissent des onglets pour cela. Chaque fenêtre a son propre tampon de défilement, de sorte que la sortie peut être capturée quand la fenêtre n’est pas activement affichée, et que l’historique puisse être sauvé en migrant la session screen vers un autre ordinateur. Screen permet de diviser verticalement ou horizontalement le terminal pour avoir plusieurs vues d’une ou plusieurs sessions.
- Partage de sessions
- Screen permet à de multiples ordinateurs de se connecter en même temps à la même session, permettant la collaboration entre de multiples utilisateurs.
Autres multiplexeurs de terminaux
modifierD’autres programmes offrent des fonctionnalités similaires. On peut notamment citer dtach, une implantation minimaliste d’un sous-ensemble des fonctionnalités de Screen ; Text windows (Twin), un environnement en mode texte ; splitvt, un utilitaire de terminal le démultipliant en plusieurs sous-terminaux ; ou encore tmux, un multiplexeur de terminal sous Licence BSD.
Notes et références
modifier- (en) Alexander Naumov (d), « GNU Screen v.5.0.0 is released », (consulté le )
Annexes
modifierArticles connexes
modifier- Ratpoison, gestionnaire de fenêtres inspiré par Screen et piloté par le clavier.
Liens externes
modifier- (en) GNU Screen sur Savannah
- (en) Wiki de référence