Screen is the best software used for full-screen window manager that multiplexes a physical terminal between several processes, typically interactive shells using only one SSH sesion or only one console.
Getting in
| |
---|
start a new screen session with session name | screen -S |
list running sessions/screens | screen -ls |
attach to a running session | screen -x |
… to session with name | screen -r |
the “ultimate attach” | screen -dRR (Attaches to a screen session. If the session is attached elsewhere, detaches that other display. If no session exists, creates one. If multiple sessions exist, uses the first one.) |
detach a running session | screen -d |
Escape key
All screen commands are prefixed by an escape key, by default C-a (that’s Control-a, sometimes written ^a). To send a literal C-a to the programs in screen, use C-a a. This is useful when when working with screen within screen. For example C-a a n will move screen to a new window on the screen within screen.
Getting out
| |
---|
detach | C-a d |
detach and logout (quick exit) | C-a D D |
Window Management
| |
---|
create new window | C-a c |
change to last-visited active window | C-a C-a (commonly used to flip-flop between two windows) |
change to window by number | C-a (only for windows 0 to 9) |
change to window by number or name | C-a ' |
change to next window in list | C-a n or C-a |
change to previous window in list | C-a p or C-a |
see window list | C-a " (allows you to select a window to change to) |
show window bar | C-a w (if you don't have window bar) |
close current window | Close all applications in the current window (including shell) |
kill current window | C-a K (not recommended) |
rename current window | C-a A |
Split screen
| |
---|
split display horizontally | C-a S |
splt display vertically | C-a | or C-a V (for the vanilla vertical screen patch) |
jump to next display region | C-a tab |
remove current region | C-a X |
remove all regions but the current one | C-a Q |
Scripting
| |
---|
send a command to a named session | screen -S -X |
create a new window and run ping example.com | screen -S -X screen ping example.com |
| |
| |
Misc
| |
---|
redraw window | C-a C-l |
enter copy mode | C-a [ or C-a (also used for viewing scrollback buffer) |
paste | C-a ] |
monitor window for activity | C-a M |
monitor window for silence | C-a _ |
enter digraph (for producing non-ASCII characters) | C-a C-v |
lock (password protect) display | C-a x |
enter screen command | C-a : |
enable logging in the screen session | C-a H |