Skip to content

Instantly share code, notes, and snippets.

@jctosta
Last active November 14, 2024 15:09
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.

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