Strict Standards: Declaration of action_plugin_loglog::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /home/public/screen/lib/plugins/loglog/action.php on line 15

Strict Standards: Declaration of action_plugin_captcha::register() should be compatible with DokuWiki_Action_Plugin::register($controller) in /home/public/screen/lib/plugins/captcha/action.php on line 0
GNU screen [man:start]

This is an old revision of the document!

Strict Standards: Declaration of syntax_plugin_graphviz::handle() should be compatible with DokuWiki_Syntax_Plugin::handle($match, $state, $pos, &$handler) in /home/public/screen/lib/plugins/graphviz/syntax.php on line 20
This page (as well as the other pages in the man: namespace) is derived from the screen man page; please try not to deviate too much from its text.

If you want to add supplemental information, put it in a page in the main namespace and link to that page from here.


screen - screen manager with VT100/ANSI terminal emulation


screen [ options ] [ cmd [ args ] ]
screen -r [[pid.]tty[.host]]
screen -r sessionowner/[[pid.]tty[.host]]

Getting Started

Before you begin to use screen you'll need to make sure you have correctly selected your terminal type, just as you would for any other termcap/terminfo program. (You can do this by using tset for example.)

If you're impatient and want to get started without doing a lot more reading, you should remember this one command: ”C-a ?”. Typing these two characters will display a list of the available screen commands and their bindings. Each keystroke is discussed in the section ”Default Key Bindings”. The manual section ”Customization” deals with the contents of your .screenrc.

If your terminal is a “true” auto-margin terminal (it doesn't allow the last position on the screen to be updated without scrolling the screen) consider using a version of your terminal's termcap that has automatic margins turned off. This will ensure an accurate and optimal update of the screen in all circumstances. Most terminals nowadays have “magic” margins (automatic margins plus usable last column). This is the VT100 style type and perfectly suited for screen. If all you've got is a “true” auto-margin terminal screen will be content to use it, but updating a character put into the last position on the screen may not be possible until the screen scrolls or the character is moved into a safe position in some other way. This delay can be shortened by using a terminal with insert-character capability.

Command-Line Options

Default Key Bindings

The Message Line

screen displays informational messages and other diagnostics in a message line. While this line is distributed to appear at the bottom of the screen, it can be defined to appear at the top of the screen during compilation. If your terminal has a status line defined in its termcap, screen will use this for displaying its messages, otherwise a line of the current screen will be temporarily overwritten and output will be momentarily interrupted. The message line is automatically removed after a few seconds delay, but it can also be removed early (on terminals without a status line) by beginning to type.

The message line facility can be used by an application running in the current window by means of the ANSI Privacy message control sequence. For instance, from within the shell, try something like:

echo '<esc>^Hello world from window '$WINDOW'<esc>\\'

where <esc> is an escape, ^ is a literal up-arrow, and \\ turns into a single backslash.

Window Types

String Escapes


Titles (naming windows)

See Titles.

The Virtual Terminal

Input Translation

Special Terminal Capabilities

Character Translation


screen initialization commands
Read in after /etc/screenrc
Socket directories (default)
/usr/tmp/screens/S-<login> Alternate socket directories.
<socket directory>/.termcap Written by the termcap output function
screen 'interprocess communication buffer'
hardcopy.[0-9] Screen images created by the hardcopy function
screenlog.[0-9] Output log files created by the log function
Terminal capability databases
/var/run/utmp Login records
$LOCKPRG Program that locks a terminal.

See Also

termcap(5), utmp(5), vi(1), captoinfo(1), tic(1)


Originally created by Oliver Laumann, this latest version was produced by Wayne Davison, Juergen Weigert and Michael Schroeder.


  • Copyright (C) 1993-2003
    • Juergen Weigert (
    • Michael Schroeder (
  • Copyright (C) 1987 Oliver Laumann

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program (see the file COPYING); if not, write to the Free Software Foundation, Inc., 59 Temple Place Suite 330, Boston, MA 02111-1307, USA


  • Ken Beal (,
  • Rudolf Koenig (,
  • Toerless Eckert (,
  • Wayne Davison (,
  • Patrick Wolfe (, kailand!pat),
  • Bart Schaefer (,
  • Nathan Glasser (,
  • Larry W. Virden (,
  • Howard Chu (,
  • Tim MacKenzie (,
  • Markku Jarvinen (mta@{cc,cs,ee},
  • Marc Boucher (marc@CAM.ORG),
  • Doug Siebert (,
  • Ken Stillson (,
  • Ian Frechett (frechett@spot.Colorado.EDU),
  • Brian Koehmstedt (,
  • Don Smith (,
  • Frank van der Linden (,
  • Martin Schweikert (,
  • David Vrona (,
  • E. Tye McQueen (,
  • Matthew Green (,
  • Christopher Williams (,
  • Matt Mosley (,
  • Gregory Neil Shapiro (gshapiro@wpi.WPI.EDU),
  • Johannes Zellner (,
  • Pablo Averbuj (


The latest official release of screen available via anonymous ftp from, or any other GNU distribution site. The home site of screen is, in the directory pub/utilities/screen. The subdirectory `private' contains the latest beta testing release. If you want to help, send a note to


  • 'dm' (delete mode) and 'xs' are not handled correctly (they are ignored). 'xn' is treated as a magic-margin indicator.
  • screen has no clue about double-high or double-wide characters. But this is the only area where vttest is allowed to fail.
  • It is not possible to change the environment variable $TERMCAP when reattaching under a different terminal type.
  • The support of terminfo based systems is very limited. Adding extra capabilities to $TERMCAP may not have any effects.
  • screen does not make use of hardware tabs.
  • screen must be installed as set-uid with owner root on most systems in order to be able to correctly change the owner of the tty device file for each window. Special permission may also be required to write the file ”/var/run/utmp”.
  • Entries in ”/var/run/utmp” are not removed when screen is killed with SIGKILL. This will cause some programs (like ”w” or ”rwho”) to advertise that a user is logged on who really isn't.
  • screen may give a strange warning when your tty has no utmp entry.
  • When the modem line was hung up, screen may not automatically detach (or quit) unless the device driver is configured to send a HANGUP signal. To detach a screen session use the -D or -d command line option.
  • If a password is set, the command line options -d and -D still detach a session without asking.
  • Both ”breaktype” and ”defbreaktype” change the break generating method used by all terminal devices. The first should change a window specific setting, where the latter should change only the default for new windows.
  • When attaching to a multiuser session, the user's .screenrc file is not sourced. Each user's personal settings have to be included in the .screenrc file from which the session is booted, or have to be changed manually.
  • A weird imagination is most useful to gain full advantage of all the features.
man/start.1463571893.txt.gz · Last modified: 2016/05/18 11:44 by
Recent changes RSS feed GNU General Public License Driven by DokuWiki