Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
tmux cheatsheet

tmux cheatsheet

As configured in my dotfiles.

start new:

tmux

start new with session name:

tmux new -s myname

attach:

tmux a  #  (or at, or attach)

attach to named:

tmux a -t myname

list sessions:

tmux ls

kill session:

tmux kill-session -t myname

In tmux, hit the prefix ctrl+b and then:

Sessions

:new<CR>  new session
s  list sessions
$  name session

Windows (tabs)

c           new window
,           name window
w           list windows
f           find window
&           kill window
.           move window - prompted for a new number
:movew<CR>  move window to the next unused number

Panes (splits)

%  horizontal split
"  vertical split

o  swap panes
q  show pane numbers
x  kill pane
⍽  space - toggle between layouts

Window/pane surgery

:joinp -s :2<CR>  move window 2 into a new pane in the current window
:joinp -t :1<CR>  move the current pane into a new pane in window 1

Misc

d  detach
t  big clock
?  list shortcuts
:  prompt

Resources:

Notes:

  • You can cmd+click URLs to open in iTerm.

TODO:

  • Conf copy mode to use system clipboard. See PragProg book.
@dideler

This comment has been minimized.

Copy link

commented Aug 1, 2013

This is either a fork of this gist or vice versa, but it's not obvious because it was duplicated instead of forked. So which is the original?

@objectiveSee

This comment has been minimized.

Copy link

commented Aug 11, 2013

Please add HOWTO Delete a session:

tmux kill-session -t <session_name>

@alkrauss48

This comment has been minimized.

Copy link

commented Aug 22, 2013

This is clean and handy. Thanks!

@jlpoolen

This comment has been minimized.

Copy link

commented Sep 30, 2013

link "cheat sheet" (http://cheat.errtheblog.com/s/tmux/) is dead.

@bqh-kaiserhl

This comment has been minimized.

Copy link

commented Oct 3, 2013

@Stevancw

This comment has been minimized.

Copy link

commented Jan 14, 2014

Are the horizontal and vertical split commands the right way round?

NB: Just tried to fork and submit a pull request... didn't realise you cannot do it through github.com for gists.

@klebervirgilio

This comment has been minimized.

Copy link

commented Feb 3, 2014

what does that <CR> means??

@fredrik

This comment has been minimized.

Copy link

commented Feb 3, 2014

@klebervirgilio: Carriage Return

@dikaio

This comment has been minimized.

Copy link

commented Mar 27, 2014

Love this, thank you.

@mark0978

This comment has been minimized.

Copy link

commented Apr 10, 2014

Is there any way to start a command within a tmux session when you start the tmux session? Something like

tmux new -s celery -e "python manage.py celery worker"

@gumatias

This comment has been minimized.

Copy link

commented May 11, 2014

I found this to be a very useful one as well:

tmux switch -t session_name

@rajuashok

This comment has been minimized.

Copy link

commented May 13, 2014

any one know how I can modify my windows to display the name (in tmux.conf). Here's my current window settings:

set -g window-status-format "#[fg=colour235,bg=colour252,bold] #I #W "
53 set -g window-status-current-format "#[fg=colour234,bg=colour39]⮀#[fg=black,bg=colour39,noreverse,bold] #I: #W #[fg=colour39,bg=colour234,nobold]⮀"

I'd like to replace #W with the actual name of the window.

@roukmoute

This comment has been minimized.

Copy link

commented Jun 18, 2014

Splits about horizontal and vertical panes are inversed.

"  horizontal split
%  vertical split
@NicolasEhrhardt

This comment has been minimized.

Copy link

commented Jul 7, 2014

Resource page not available anymore: http://cheat.errtheblog.com/s/tmux/

@TWSSYesterday

This comment has been minimized.

Copy link

commented Jul 11, 2014

Hi there, sometimes it won't let me exit via Ctrl + B + D, how to fix this?

@kumarabinash

This comment has been minimized.

Copy link

commented Jul 29, 2014

Neat.
Btw, is there any way to resize the panes?

@RussellBradley

This comment has been minimized.

Copy link

commented Jul 31, 2014

The resource page is still available at "http://cheat.errtheblog.com/s/tmux" just remove the forward slash at the end of the link.

@tallenaz

This comment has been minimized.

Copy link

commented Aug 18, 2014

In Linux, to resize panes (for example) separated by a horizontal split, you can hold down ctrl-b while pressing the up/down arrow keys.

@a2xchip

This comment has been minimized.

Copy link

commented Jan 2, 2015

To scroll page: Press Ctrl+B and then page up/page down

@kenshinji

This comment has been minimized.

Copy link

commented May 15, 2015

wow, this is exactly what I'm looking for, thanks!

@kibromGB

This comment has been minimized.

Copy link

commented Aug 1, 2015

So helpful. Thank you.

@francwalter

This comment has been minimized.

Copy link

commented Aug 10, 2015

Is there a way to kill all windows in tmux?
In screen this was:
C-a,
but in tmux I find only to kill one single window, not all.
Thank.

EDIT:
Easy enough:
tmux kill-server
will kill all tmux windows and sessions, good enough for my purpose.

@immygod

This comment has been minimized.

Copy link

commented Mar 7, 2016

tnx it was usefull

@thagoat

This comment has been minimized.

Copy link

commented Mar 30, 2016

Most handy

@DaveDBA

This comment has been minimized.

Copy link

commented Apr 13, 2016

I loved this, now I have created all my sessions with name and keeps every task tidy and organized.

@tunamin

This comment has been minimized.

Copy link

commented Aug 10, 2016

thanks it was usefull

@charlessutton

This comment has been minimized.

Copy link

commented Aug 12, 2016

Thanks it is clear and useful

@chrisliu54

This comment has been minimized.

Copy link

commented Aug 25, 2016

Thanks it is useful and handy : )

@sjose1x

This comment has been minimized.

Copy link

commented Oct 6, 2016

Is it possible to clone session..?

@karoitay

This comment has been minimized.

Copy link

commented Nov 8, 2016

Suggestion: update kill session

From:
In tmux, hit the prefix ctrl+b and then:

To

In tmux, hit the prefix ctrl+b and then :

@akinjide

This comment has been minimized.

Copy link

commented Jan 5, 2017

Currently windows list shows hostname and path but Any ideas on how to add status like current command executing, cwd, or other fun stuffs?

@tony

This comment has been minimized.

Copy link

commented Feb 15, 2017

To those looking to learn more about tmux, I released an ebook freely available online called The Tao of tmux. I'm excited to spread the word about it because I think the way I break tmux down into its objects (sessions, windows, panes) is a good approach to explaining it. I also go into advanced things like tmux' aliases, targets and formats. Feel free to give it a look! Tony

@sahilsd

This comment has been minimized.

Copy link

commented Apr 21, 2017

In the status bar showing current active tmux sessions, can we show $PWD there instead of the process names?

@GlitchModulus

This comment has been minimized.

Copy link

commented Jun 14, 2017

dumb question but is there any way to get a list of these commands from within tmux (for quick lookup in the future so don't have to open web browser etc)? looking at 'help' within tmux but cannot find what i'm looking for.

Thanks in advance.

@wainweb

This comment has been minimized.

Copy link

commented Jun 16, 2017

@GlitchModulus, hit the prefix ctrl+b then ?

@masious

This comment has been minimized.

Copy link

commented Aug 3, 2017

In the dotfiles of @henrik copy mode is set to work like the way it works in the vi. After C-b then v I can't start selecting my text. Does anyone have some similar problem?

@bzd111

This comment has been minimized.

Copy link

commented Oct 29, 2017

Usefull

@vtiwari227

This comment has been minimized.

Copy link

commented Dec 7, 2017

Very handy, Thanks for this

@jhector87

This comment has been minimized.

Copy link

commented Dec 18, 2017

Really appreciate the detailed explanation

@jhector87

This comment has been minimized.

Copy link

commented Dec 18, 2017

Is there a way to reactivate the sessions in gdb dashboard especially when debugging?

@TroiSilver

This comment has been minimized.

Copy link

commented Feb 14, 2018

most handy tmux cheatsheet

@ishouvik

This comment has been minimized.

Copy link

commented Feb 20, 2018

Thank you very much! This was very helpful.

@volkflo

This comment has been minimized.

Copy link

commented Feb 23, 2018

Thanks!

@TheAslera

This comment has been minimized.

Copy link

commented Mar 9, 2018

Helpful !
To start a detached command:
tmux new -d -s my-session 'command1; command2;'

@arbazkiraak

This comment has been minimized.

Copy link

commented Mar 17, 2018

Awesome , Thank you ~

@vishnu-venkatesh

This comment has been minimized.

Copy link

commented Apr 4, 2018

% horizontal split - I guess this means the two panes are horizontally placed relative to each other. The splitting line is vertical. You might want to make that more clear. Other than that, very nice cheat sheet.

@ishanSrt

This comment has been minimized.

Copy link

commented May 10, 2018

@dideler doesn't matter. Everything's raw in open source.

@markuz

This comment has been minimized.

Copy link

commented May 19, 2018

I think a respawn-pane is missing here

@ryazwinski

This comment has been minimized.

Copy link

commented Sep 19, 2018

Dumb question, but I can't find/figure it: is there any way to focus input on just one pane and then return to the all-panes context?

@Apichai1976

This comment has been minimized.

Copy link

commented Oct 11, 2018

Thank you, it is useful.

@ovigia

This comment has been minimized.

Copy link

commented Oct 21, 2018

Is there a way to kill all windows in tmux?
In screen this was:
C-a,
but in tmux I find only to kill one single window, not all.
Thank.

EDIT:
Easy enough:
tmux kill-server
will kill all tmux windows and sessions, good enough for my purpose.

C+a k

@ninezero90hy

This comment has been minimized.

Copy link

commented Nov 14, 2018

Thanks! 👍

@mossishahi

This comment has been minimized.

Copy link

commented Nov 25, 2018

Hi !

I have launched a process in a tmux using an app. Now I wanna know which version of the app is running, I don't remember that which directory I added to that tmux's PATH and so cannot understand which version is running. Is there any way to see a tmux path outside that?
[any other creative idea is welcome]

Thanks

@haydenflinner

This comment has been minimized.

@YazanALMonshed

This comment has been minimized.

Copy link

commented Nov 30, 2018

Hello Can you provide me with more details about tmux

@OddmarDam

This comment has been minimized.

Copy link

commented Mar 28, 2019

what does that <CR> means??

Carriage Return

@isaacaddis

This comment has been minimized.

Copy link

commented Aug 3, 2019

This needs far more details on it .... like for example renaming sessions

@r2evans

This comment has been minimized.

Copy link

commented Aug 27, 2019

For those that follow: this gist has not been revised since 2012.

Conversely, this version (of the same cheatsheat) appears to be a branch/copy of this one but has been updated several times (latest in 2015). While four years old isn't awesome, it's still more recent (and feature-full) than this gist.

@henrik, thanks for starting it many years ago! This is obviously helpful to many.

@davegallant

This comment has been minimized.

Copy link

commented Sep 23, 2019

This is either a fork of this gist or vice versa, but it's not obvious because it was duplicated instead of forked. So which is the original?

  • henrik created this gist on Mar 3, 2012.
  • MohamedAlaa created this gist on Jun 20, 2012.

It's possible to tell now. I don't remember what GitHub looked like in 2013. :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.