Skip to content

Instantly share code, notes, and snippets.

@jctosta
Last active October 19, 2025 22:37
Show Gist options
  • Save jctosta/af918e1618682638aa82 to your computer and use it in GitHub Desktop.
Save jctosta/af918e1618682638aa82 to your computer and use it in GitHub Desktop.
Screen Cheatsheet

Screen Quick Reference

Basic

Description Command
Start a new session with session name screen -S <session_name>
List running sessions / screens screen -ls
Attach to a running session screen -x
Attach to a running session with name screen -r <session_name>
Detach a running session screen -d <session_name>
Kill a running session screen -X -S [session # you want to kill] kill
Accessing a screen that is already attached screen -r -d [session name]

Escape Key

All screen commands are prefixed by an escape key, by default Ctrl-a (that's Control-a, sometimes written ^a). To send a literal Ctrl-a to the programs in screen, use Ctrl-a a. This is useful when when working with screen within screen. For example Ctrl-a a n will move screen to a new window on the screen within screen.

Getting Out

Description Command
detach Ctrl-a d
detach and logout (quick exit) Ctrl-a D D
exit screen Ctrl-a : quit or exit all of the programs in screen.
force-exit screen Ctrl-a C-\ (not recommended)

Help

Description Command
See help Ctrl-a ? (Lists keybindings)

Window Management

Description Command
Create new window Ctrl-a c
Change to last-visited active window Ctrl-a Ctrl-a (commonly used to flip-flop between two windows)
Change to window by number Ctrl-a <number> (only for windows 0 to 9)
Change to window by number or name Ctrl-a ' <number or title>
Change to next window in list Ctrl-a n or Ctrl-a <space>
Change to previous window in list Ctrl-a p or Ctrl-a <backspace>
See window list Ctrl-a " (allows you to select a window to change to)
Show window bar Ctrl-a w (if you don't have window bar)
Kill current window Ctrl-a k (not recommended)
Kill all windows Ctrl-a \ (not recommended)
Rename current window Ctrl-a A

Split screen

Description Command
Split display horizontally Ctrl-a S
Split display vertically `Ctrl-a
Jump to next display region Ctrl-a tab
Remove current region Ctrl-a X
Remove all regions but the current one Ctrl-a Q

Misc

Description Command
Redraw window Ctrl-a C-l
Enter copy mode Ctrl-a [ or Ctrl-a <esc> (also used for viewing scrollback buffer)
Paste Ctrl-a ]
Monitor window for activity Ctrl-a M
Monitor window for silence Ctrl-a _
Enter digraph (for producing non-ASCII characters) Ctrl-a Ctrl-v
Lock (password protect) display Ctrl-a x
Enter screen command Ctrl-a :
Enable logging in the screen session Ctrl-a H

Scrolling

Description Command
Enter scrolling mode Ctrl-a esc
Scroll Up Ctrl-u
Scroll Down Ctrl-d
Exit scrolling mode esc esc

This section is a contribution from: @mickpbarry

@alexb-git
Copy link

alexb-git commented May 28, 2023

changed order of screens:
Open :windowlist (Ctrl-a ") move windows up , (comma) and down with . (dot)

0 user <- selected | pressed '.' | 0 log              |  pressed ',' |  0 user <- selected
1 log              |             | 1 user <- selected |              |  1 log 

@sanyamsmulay
Copy link

Hey !

  • | exit screen | Ctrl-a : quit or exit all of the programs in screen.|
    +| exit screen | Ctrl-a :quit to quit or exit all of the programs in screen.|

I had not realised that the quit needs to be typed.
Hopefully highlighting the quit would be helpful.

Here's the diff:
https://gist.github.com/sanyamsmulay/410cfe2123a4ff54acd7d22b65074ad0/revisions?source=1#diff-c1482fcf0d55b3ecb91770624a12c26c5e95d40bfa732406d2abb03b6a3e0e9dL24

@MohammedRakib
Copy link

Can you please add kill all screens:

killall screen

@lazarow
Copy link

lazarow commented Oct 22, 2024

Instead of kill would be nice to see screen -X -S [session # you want to kill] quit.

@sanchitsabhlok
Copy link

Not a screen command per se, but you can add echo $STY which prints nothing if you're not in a screen session, but if you ARE in one, it will print the id of the screen session. It is useful when you're going back and forth between screen and shell and lose your bearings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment