Both sides previous revision
Previous revision
Next revision
|
Previous revision
|
man:start [2016-05-18 11:44] 87.152.18.246 |
man:start [2021-02-19 20:14] (current) asciiphil old revision restored (2018-08-15 13:09) |
''screen -r //sessionowner//%%/[[%%//pid//.]//tty//[.//host//]]'' | ''screen -r //sessionowner//%%/[[%%//pid//.]//tty//[.//host//]]'' |
| |
| ====== Description ====== |
| |
| ''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. |
| |
| When ''screen'' is called, it creates a single window with a shell in it (or the specified command) and then gets out of your way so that you can use the program as you normally would. Then, at any time, you can create new (full-screen) windows with other programs in them (including more shells), kill existing windows, view a list of windows, turn output logging on and off, copy-and-paste text between windows, view the scrollback history, switch between windows in whatever manner you wish, etc. All windows run their programs completely independent of each other. Programs continue to run when their window is currently not visible and even when the whole screen session is detached from the user's terminal. When a program terminates, ''screen'' (per default) kills the window that contained it. If this window was in the foreground, the display switches to the previous window; if none are left, ''screen'' exits. |
| |
| Everything you type is sent to the program running in the current window. The only exception to this is the one keystroke that is used to initiate a command to the window manager. By default, each command begins with a control-a (abbreviated C-a from now on), and is followed by one other keystroke. The command character and all the key bindings can be fully customized to be anything you like, though they are always two characters in length. |
| |
| ''screen'' does not understand the prefix "C-" to mean control. Please use the caret notation ("''^A''" instead of "''C-a''") as arguments to e.g. the [[commands:escape]] command or the ''-e'' option. Screen will also print out control characters in caret notation. |
| |
| The standard way to create a new window is to type "''[[commands:screen|C-a c]]''". This creates a new window running a shell and switches to that window immediately, regardless of the state of the process running in the current window. Similarly, you can create a new window with a custom command in it by first binding the command to a keystroke (in your .screenrc file or at the "''[[commands:colon|C-a :]]''" command line) and then using it just like the "''[[commands:screen|C-a c]]''" command. In addition, new windows can be created by running a command like: |
| |
| <code> |
| screen emacs prog.c |
| </code> |
| |
| from a shell prompt within a previously created window. This will not run another copy of ''screen'', but will instead supply the command name and its arguments to the window manager (specified in the $STY environment variable) who will use it to create the new window. The above example would start the emacs editor (editing prog.c) and switch to its window. Note that you cannot transport environment variables from the invoking shell to the application (emacs in this case), because it is forked from the parent screen process, not from the invoking shell. |
| |
| If "/var/run/utmp" is writable by screen, an appropriate record will be written to this file for each window, and removed when the window is terminated. This is useful for working with "''talk''", "''script''", "''shutdown''", "''rsend''", "''sccs''" and other similar programs that use the utmp file to determine who you are. As long as screen is active on your terminal, the terminal's own record is removed from the utmp file. See also "''[[commands:login|C-a L]]''". |
| |
====== Getting Started ====== | ====== Getting Started ====== |
See [[Default Key Bindings]]. | See [[Default Key Bindings]]. |
| |
| ====== Customization ====== |
| |
| See [[Customization]]. |
| |
====== The Message Line ====== | ====== The Message Line ====== |
| |
See [[Flow-Control]]. | See [[Flow-Control]]. |
| |
| ====== Session Name (naming sessions) ====== |
| |
| See [[:sessionnames]] |
| |
====== Titles (naming windows) ====== | ====== Titles (naming windows) ====== |
See [[Character Translation]]. | See [[Character Translation]]. |
| |
| ====== Environment ====== |
| |
| ; COLUMNS : Number of columns on the terminal (overrides termcap entry). |
| ; HOME : Directory in which to look for .screenrc. |
| ; LINES : Number of lines on the terminal (overrides termcap entry). |
| ; LOCKPRG : Screen lock program. |
| ; NETHACKOPTIONS : Turns on nethack option. |
| ; PATH : Used for locating programs to run. |
| ; SCREENCAP : For customizing a terminal's TERMCAP value. |
| ; SCREENDIR : Alternate socket directory. |
| ; SCREENRC : Alternate user screenrc file. |
| ; SHELL : Default shell program for opening windows (default "''/bin/sh''"). |
| ; STY : Alternate socket name. |
| ; SYSSCREENRC : Alternate system screenrc file. |
| ; TERM : Terminal name. |
| ; TERMCAP : Terminal description. |
| ; WINDOW : Window number of a window (at creation time). |
| |
====== Files ====== | ====== Files ====== |
* Pablo Averbuj (pablo@averbuj.com). | * Pablo Averbuj (pablo@averbuj.com). |
| |
| ====== Version ====== |
| |
| This is version 4.0.2. Its roots are a merge of a custom version 2.3PR7 by Wayne Davison and several enhancements to Oliver Laumann's version 2.0. Note that all versions numbered 2.x are copyright by Oliver Laumann. |
| |
====== Availability ====== | ====== Availability ====== |