GNU Screen Cheatsheet

3 min read·Matthieu

Quick reference for GNU Screen keyboard shortcuts, CLI flags, copy mode navigation, and region management.

Session Management

Action Command
Start named session screen -S name
List sessions screen -ls
Reattach to session screen -r name
Force-detach and reattach screen -D -r name
Detach remote, reattach here screen -d -r name
Multi-display attach screen -x name
Start detached session screen -dmS name
Remove dead sessions screen -wipe
Send command to session screen -S name -X quit
Enable logging from start screen -L -S name

Keyboard Shortcuts

All shortcuts start with the prefix Ctrl-a (default escape key).

Shortcut Action
Ctrl-a d Detach from session
Ctrl-a c Create new window
Ctrl-a n Next window
Ctrl-a p Previous window
Ctrl-a 0-9 Jump to window by number
Ctrl-a " List windows (interactive)
Ctrl-a A Rename current window
Ctrl-a k Kill current window
Ctrl-a ? Show all key bindings

Region (Split) Management

Shortcut Action
Ctrl-a S Split horizontally
Ctrl-a | Split vertically
Ctrl-a Tab Move to next region
Ctrl-a X Close current region
Ctrl-a Q Close all regions except current
Ctrl-a :resize +5 Grow region by 5 lines
Ctrl-a :resize -5 Shrink region by 5 lines

Region layouts are lost on detach. Recreate them manually after reattaching.

Copy Mode

Enter copy mode with Ctrl-a [ or Ctrl-a Esc. Paste with Ctrl-a ].

Key Action
Arrow keys / h/j/k/l Move cursor
Ctrl-u / Ctrl-d Scroll half page up / down
0 / $ Beginning / end of line
g / G Top / bottom of scrollback
/ / ? Search forward / backward
Space Set mark (start/end selection)
Enter Copy selection and exit
Esc Exit without copying

Increase the default 100-line scrollback buffer in .screenrc:

defscrollback 10000

Essential .screenrc

startup_message off
shell /bin/bash
defscrollback 10000
term screen-256color
vbell off
altscreen on
autodetach on
nonblock on
deflogin on
hardstatus alwayslastline
hardstatus string '%{= kG}[%{G}%H%{g}][%=%{=kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%=%{g}][%{B}%Y-%m-%d %{W}%c%{g}]'

Troubleshooting Quick Fixes

Problem Fix
Session stuck as "Attached" screen -D -r name
Dead sessions in list screen -wipe
Terminal frozen (XOFF) Ctrl-a q
Garbled characters Add defutf8 on and term screen-256color to .screenrc
Enable window logging Ctrl-a H (logs to screenlog.N)

For the full tutorial, see How to Use GNU Screen on a Linux VPS.


Copyright 2026 Virtua.Cloud. All rights reserved. This content is original work by the Virtua.Cloud team. Reproduction, republication, or redistribution without written permission is prohibited.

Ready to try it yourself?

Practice GNU Screen on your own Linux VPS.

See VPS Plans