Table of Contents

Introduction

A screen manager with VT100/ANSI terminal emulation.

Screen is a full-screen window manager that multiplexes a physical terminal between several processes (typically interactive shells). Each virtual terminal provides the functions of a DEC VT100 terminal and, in addition, several control functions from the ISO 6429 (ECMA 48, ANSI X3.64) and ISO 2022 standards (e.g. insert/delete line and support for multiple character sets). There is a scrollback history buffer for each virtual terminal and a copy-and-paste mechanism that allows moving text regions between windows.

Links

General

https://www.gnu.org/software/screen/

Docs

https://www.gnu.org/software/screen/manual/

Files and Directories

General Files and Directories

FIXME

Configuration Files

File Description
$SYSSCREENRC System-wide screen configuration for all users on the system.
/etc/screenrc System-wide screen configuration for all users on the system.
$SCREENRC User-specific screen configuration.
$HOME/.screenrc User-specific screen configuration.

Each configuration location from top to bottom can override configuration options set in the previous one.

Getting Help

Manual pages:

user@host:~$ man screen

Install

To install screen on Debian:

root@host:~$ apt-get update
root@host:~$ apt-get -y install screen

Configuration

General configuration:

autodetach on           # Detach upon hangup, keep programs in screen(s)
                        # running: Default: on
bell_msg 'Update in window %n' # Message shown for a bell in a non-active window
 
# Always show a caption. Default: splitonly
# Format:
#  - The background color is black.
#  - On the left side, show the hostname enclosed in "[" and "]" in a
#    green color.
#  - On the right side, show the date in a blue color and the time in
#    a white color together enclosed in "[" and "]".
#  - In the middle show the window list. The active window name in a
#    white color and enclosed in red "(" and ")". The inactive window
#    names in a gray color.
caption always '%{= kG}[%{G}%H%{g}][%=%{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%=%{g}][%{B}%Y/%m/%d %{W}%c:%s%{g}]'
 
defmonitor off          # Do not display activity notification messages
                        # for windows which are in the background.
defscrollback 50000     # Keep scrollback buffer of n lines. Default: 100
defutf8 on              # Set the default character encoding to UFT8
hardcopydir $HOME       # Write hardcopys to the users $HOME. Default:
                        # current working directory
msgwait 5               # Duration a message is displayed. Default: 5
shelltitle 'bash'       # Name of the title for newly created windows
startup_message off     # Do not show the screens startup message
vbell off               # Disable the visual bell

Key bindings:

Usage

To start a new screen session:

user@host:~$ screen

Detach a screen session already running:

user@host:~$ screen -d [pid.tty.host]

Reattach to a already running screen session:

user@host:~$ screen -d -r [pid.tty.host]

Status Check

To check the status of all currently running screen sessions:

user@host:~$ screen -list
user@host:~$ screen -ls
There is a screen on:
    6156.pts-0.hostname     (08/04/2017 06:43:08 AM)    (Detached)
1 Socket in /var/run/screen/S-root.

Recipies

Known Issues

FIXME