GNU Screen
![]() GNU Screen with split-screen
|
|
Developer(s) | Amadeusz Sławiński and the GNU Project |
---|---|
Initial release | 1987 |
Stable release | 4.3.0 (June 13, 2015[±] | )
Preview release | None [±] |
Development status | Active |
Written in | C |
Operating system | Unix-like |
Type | Terminal multiplexer |
License | GNU GPL v3 |
Website | www |
GNU Screen is a software application that can be used to multiplex several virtual consoles, allowing a user to access multiple separate terminal sessions inside a single terminal window or remote terminal session. It is useful for dealing with multiple programs from a command line interface, and for separating programs from the Unix shell that started the program.
Released under the terms of version 3 or later of the GNU General Public License, GNU Screen is free software.
Contents
Features
<templatestyles src="Module:Hatnote/styles.css"></templatestyles>
GNU Screen can be thought of as a text version of graphical window managers, or as a way of putting virtual terminals into any login session. It is a wrapper that allows multiple text programs to run at the same time, and provides features that allow the user to use the programs within a single interface productively. This enables the following features: persistence, multiple windows, and session sharing.
Screen is often used when a network connection to the terminal is unreliable, as a dropped network connection typically terminates all programs the user was running. Running the applications under screen means that the applications don't even know the terminal has detached, and allows the user to reattach the session later and continue working from where they left off.
History
Screen was originally designed by Oliver Laumann and Carsten Bormann and published in 1987.[1]
Design criteria included VT100 emulation (including ANSI X3.64 (ISO 6429) and ISO 2022) and reasonable performance for heavy daily use when character-based terminals were still common. Later, the at-the-time novel feature of disconnection/reattachment was added.
Around 1990, Laumann handed over maintenance of the code to Jürgen Weigert and Michael Schroeder at the University of Erlangen-Nuremberg, who later moved the project to the GNU Project and added features such as split-screen, cut-and-paste, and screen-sharing.[2]
By 2014, development had slowed to a crawl. Wanting to change this, Amadeusz Sławiński volunteered to help. In response, Laumann granted him maintainership. Sławiński proceeded to put out the first new Screen release in half a decade. Because there were some unofficial "Screen 4.1" releases floating around the Internet, he called this new release "Screen 4.2.0".
See also
- xpra: a tool that lets you run X Window System applications on one machine, disconnect them from that machine's display, then reconnect them to another machine's display.
- Byobu (software): a frontend for GNU Screen
- tmux: a BSD-licensed terminal multiplexer with a feature set similar to GNU Screen's
Further reading
- Jeff Covey (12 Oct 2002) The Antidesktop, Freshmeat
References
- Martin Streicher (10 Feb 2009) Speaking UNIX: Stayin' alive with Screen, IBM developerWorks
- Philip J. Hollenback (22 Aug 2006) Using screen for remote interaction, Linux.com
- Adam Lazur (January 2003) Power Sessions with Screen, Linux Journal, issue 105
- William Von Hagen, Brian K. Jones, Linux server hacks, Volume 2, O'Reilly Media, 2005, ISBN 0-596-10082-5, pp. 155–157 (Hack #34)
- Carl Albing, J. P. Vossen, Cameron Newham, Bash cookbook, O'Reilly Media, 2007, ISBN 0-596-52678-4, pp. 415–418
- Dru Lavigne, BSD hacks, O'Reilly Media, 2004, ISBN 0-596-00679-9, pp. 44–48 (Hack #12)
- Noah Gift, Jeremy Jones, Python for Unix and Linux system administration, O'Reilly Germany, 2008, ISBN 0-596-51582-0, pp. 300–301
- Paul Mutton, IRC hacks, O'Reilly Media, 2004, ISBN 0-596-00687-X, pp. 345–349 (Hack #92)
Notes
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ screen ftp
External links
- No URL found. Please specify a URL here or add one to Wikidata.
- Quick reference
- Article
- Source code repository