Operation
To start the program, type screen. Screen then creates a single window with a shell in it. You now have the ability to detach and reattach, turn output logging on, etc. But mostly screen stays out of your way. You work as you normally would.
-a is the default key used to send a command to the screen window manager. To create a new window, type -a, and then c. Now you have two windows.
To switch from window to window you can type -a n, to go to the next window, -a p, to go to the previous window, or -a and the window number. For example, -a 7 would switch you to screen number 7. How do you detach? -a d, to detach. If you’re viewing screen number 7 when you detach, screen number 7 will reappear when you reattach. To reattach the next time you log in, start screen with the -r flag
Create new screen:
screen -d -R -S test
Detach:
CRTL-A d
List:
screen -ls
Kill the current window:
CRTL-A k
…
Also see
http://www.freebsddiary.org/screen.php
http://stackoverflow.com/questions/11092616/gnu-screen-how-can-i-create-a-screen-in-the-background-if-it-doesnt-exist
http://kb.iu.edu/data/acuy.html
screen -d -R -S test
-d -R Reattach a session and if necessary detach or even create it first
Options:
-4 Resolve hostnames only to IPv4 addresses.
-6 Resolve hostnames only to IPv6 addresses.
-a Force all capabilities into each window’s termcap.
-A -[r|R] Adapt all windows to the new display width & height.
-c file Read configuration file instead of ‘.screenrc’.
-d (-r) Detach the elsewhere running screen (and reattach here).
-dmS name Start as daemon: Screen session in detached mode.
-D (-r) Detach and logout remote (and reattach here).
-D -RR Do whatever is needed to get a screen session.
-e xy Change command characters.
-f Flow control on, -fn = off, -fa = auto.
-h lines Set the size of the scrollback history buffer.
-i Interrupt output sooner when flow control is on.
-l Login mode on (update /var/run/utmp), -ln = off.
-ls [match] or -list. Do nothing, just list our SockDir [on possible matches].
-L Turn on output logging.
-m ignore $STY variable, do create a new screen session.
-O Choose optimal output rather than exact vt100 emulation.
-p window Preselect the named window if it exists.
-q Quiet startup. Exits with non-zero return code if unsuccessful.
-r [session] Reattach to a detached screen process.
-R Reattach if possible, otherwise start a new session.
-s shell Shell to execute rather than $SHELL.
-S sockname Name this session <pid>.sockname instead of <pid>.<tty>.<host>.
-t title Set title. (window’s name).
-T term Use term as $TERM for windows, rather than “screen”.
-U Tell screen to use UTF-8 encoding.
-v Print “Screen version 4.01.00devel (GNU) 2-May-06”.
-wipe [match] Do nothing, just clean up SockDir [on possible matches].
-x Attach to a not detached screen. (Multi display mode).
-X Execute <cmd> as a screen command in the specified session.
Â
General commands
Note: Every screen
 command begins with Ctrl-aÂ
.
Ctrl-a c |
Create new window (shell) |
Ctrl-a k |
Kill the current window |
Ctrl-a w |
List all windows (the current window is marked with “*”) |
Ctrl-a 0-9 |
Go to a window numbered 0-9 |
Ctrl-a n |
Go to the next window |
Ctrl-a  Ctrl-a |
Toggle between the current and previous window |
Ctrl-a [ |
Start copy mode |
Ctrl-a ] |
Paste copied text |
Ctrl-a ? |
Help (display a list of commands) |
Ctrl-a  Ctrl-\ |
Quit screen |
Ctrl-a D  (Shift-d) |
Power detach and logout |
Ctrl-a d |
Detach but keep shell window open |
http://kb.iu.edu/data/acuy.html