Lessons learned for GNU Screen

From personal usage

  • stuff in ~/.screenrc to append text in the selected window
    • e.g. stuff 'cd ~/MyPythonProject; workon MyPythonProject;'
  • Ctrl-a:| for vertical split then Ctrl-a:TAB to switch
  • Ctrl-a:source properscreenrc : load the configuration file
    • pratical to avoid restarting a new session but appends other windows
      • can be problematic for numbers
  • Ctrl-a:number 1 : moves the current window to position 1
  • Ctrl-a+[, Ctrl-a+Ctrl-[, Ctrl-a+<ESC> : enters scrollback mode
  • split
    • Ctrl-a+|: vertical split
    • Ctrl-a+S: horizontal split
    • Ctrl-a+TAB: switching between splits
    • Ctrl-a+": select a window to display in the split
  • screen -X other : send the command other to the current screen
    • e.g. screen -X select reading; to jump to the window named "reading"
    • for example /exec screen -X other will switch to the other screen within irssi
  • Ctrl-a+c : create new window
  • Ctrl-a+a : switch to the last window
  • ~/.screenrc : configuration file holding the status line and other parameter
    • ability to set the status line, start multiple command at startup, etc
  • screen -x : connect to an existing screen from the same user, perfect for tutoring
    • has some sudo issues, have to connect directly from ssh

From GNU Screen: an introduction and beginner's tutorial

By jeduthun in Technology for kuro5hin.org, March 10, 2004

  • Ctrl-a+A : rename the current window
  • Ctrl-a+K : kill misbehaving programs
  • Ctrl-a+M : monitor activity in a window
    • see also monitoring by Aperiodic.net : "Use C-a M to start monitoring a window for activity. C-a _ monitors for 30 seconds of silence."

See also

  • Screen User's Manual
    • man:screen
    • Copy and Paste
      • For those confined to a hardware terminal, these commands provide a cut and paste facility more powerful than those provided by most windowing systems.
  • A Guide to Efficiently Using Irssi and Screen by QuadPoint.org
    • screen -raAD : connect to the current existing screen
  • GNU screen quick_reference
  • tmux enables a number of terminals (or windows), each running a separate program, to be created, accessed, and controlled from a single screen. tmux may be detached from a screen and continue running in the background, then later reattached.
  • neercs (including grabbing a process that you forgot to start inside neercs)


My notes on Tools gather what I know or want to know. Consequently they are not and will never be complete references. For this, official manuals and online communities provide much better answers.