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.
Ce 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.
D’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.