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 [quick_reference]

Differences

This shows you the differences between two versions of the page.

quick_reference [2016/11/11 09:27]
62.220.29.154 created
quick_reference [2018/01/11 15:01] (current)
128.214.166.186
Line 1: Line 1:
-uvz+====== SCREEN Quick Reference ====== 
 + 
 +===== Getting in test ==== 
 + 
 +| start a new screen session with session name | ''screen -S //<name>//'' | 
 +| list running sessions/screens | ''screen -ls'' | 
 +| attach to a running session | ''screen -x'' | 
 +| attach to session //name// | ''screen -r //<name>//'' | 
 +| 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.) | 
 + 
 +===== 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 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 | ''[[commands:detach|C-a d]]'' | 
 +| detach and logout (quick exit) | ''[[commands:pow_detach|C-a D D]]'' | 
 +| exit screen | ''[[commands:quit|C-a \]]'' Exit all of the programs in screen. (//not// recommended) |  
 +| force-exit screen | ''[[commands:quit|C-a C-\]]'' (//not// recommended) | 
 +| getting out of the screen session | exit | 
 + 
 +===== Window Management ===== 
 + 
 +| create new window | ''[[commands:screen|C-a c]]'' | 
 +| change to last-visited active window | ''[[commands:other|C-a C-a]]'' (commonly used to flip-flop between two windows) | 
 +| change to window by number | ''[[commands:select|C-a <number>]]'' (only for windows 0 to 9) | 
 +| change to window by number or name | ''[[commands:select|C-a ' <number or title>]]'' | 
 +| change to next window in list | ''[[commands:next|C-a n]]'' or ''[[commands:next|C-a <space>]]'' | 
 +| change to previous window in list | ''[[commands:prev|C-a p]]'' or ''[[commands:prev|C-a <backspace>]]'' | 
 +| see window list     | ''[[commands:windowlist|C-a "]]'' (allows you to select a window to change to) | 
 +| show window bar       | ''[[commands:windows|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   | ''[[commands:kill|C-a k]]'' (not recommended) | 
 +| kill all windows   | ''[[commands:kill|C-a \]]'' (not recommended) | 
 +| rename current window | ''[[commands:title|C-a A]]'' | 
 + 
 +===== Split screen ===== 
 + 
 +| split display horizontally  | ''[[commands:split|C-a S]]'' | 
 +| split display vertically    | ''[[commands:split|C-a |]]'' or ''[[commands:split|C-a V]]'' (for the vanilla vertical screen patch) | 
 +| jump to next display region | ''[[commands:focus|C-a tab]]'' | 
 +| remove current region       | ''[[commands:remove|C-a X]]'' | 
 +| remove all regions but the current one | ''[[commands:only|C-a Q]]'' | 
 + 
 +===== Clipboard and Navigation ===== 
 + 
 +| freely navigate buffer | ''[[commands:copy|C-a [ ]]'' or ''[[commands:copy|C-a <esc>]]'' | 
 +| toggle selection to copy | ''[[commands:copy|space]]'' | 
 +| paste                       | ''[[commands:copy|C-a ] ]]''  | 
 + 
 +===== Help ===== 
 + 
 +| See help | ''[[commands:help|C-a ?]]'' (lists keybindings) | 
 + 
 +The [[man:start|man page]] is the complete reference. 
 + 
 +===== Scripting ===== 
 + 
 +To any session //name//, 
 +| send a command to a named session                | ''screen -S //<name>// -X //<command>//'' | 
 +| create a new window and run //ping example.com// | ''screen -S //<name>// -X screen //ping example.com//'' | 
 +| stuff characters into the input buffer\\ using bash to expand a newline character\\ ([[http://lists.gnu.org/archive/html/screen-users/2007-06/msg00012.html|from here]]) | <code bash>screen -S <name> [-p <page>] -X stuff $'quit\r'</code> | 
 + 
 + 
 +A full example: 
 + 
 +<code bash> 
 +# run bash within screen 
 +screen -AmdS bash_shell bash 
 +# run top within that bash session 
 +screen -S bash_shell -p 0 -X stuff $'top\r' 
 + 
 +# ... some time later 
 + 
 +# stuff 'q' to tell top to quit 
 +screen -S bash_shell -X stuff 'q' 
 +# stuff 'exit\n' to exit bash session 
 +screen -S bash_shell -X stuff $'exit\r' 
 +</code> 
 + 
 +===== Misc ===== 
 + 
 +| redraw window               | ''[[commands:redisplay|C-a C-l]]'' | 
 +| monitor window for activity | ''[[commands:monitor|C-a M]]'' | 
 +| monitor window for silence  | ''[[commands:silence|C-a _]]'' | 
 +| enter digraph (for producing non-ASCII characters) | ''[[commands:digraph|C-a C-v]]'' | 
 +| lock (password protect) session | ''[[commands:lockscreen|C-a x]]'' | 
 +| enter screen command        | ''[[commands:colon|C-a :]]'' | 
 +| enable logging in the screen session | ''[[commands:logging|C-a H]]'' | 
 + 
 +===== Scrollback-buffer ===== 
 + 
 +In copy mode, one can navigate the scrollback buffer in various ways: 
 + 
 +| half page up | C-u |           | half page down | C-d | 
 +| back | C-b |                   | forward | C-f | 
 +| cursor left/down/up/right | h/j/k/l |
 
quick_reference.1478856427.txt.gz · Last modified: 2016/11/11 09:27 by 62.220.29.154
Recent changes RSS feed GNU General Public License Driven by DokuWiki