Skip to content

Instantly share code, notes, and snippets.

@henrik
Created March 3, 2012 19:47
Show Gist options
  • Save henrik/1967800 to your computer and use it in GitHub Desktop.
Save henrik/1967800 to your computer and use it in GitHub Desktop.
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.
@ninezero90hy
Copy link

ninezero90hy commented Nov 14, 2018

Thanks! 👍

@mossishahi
Copy link

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
Copy link

@yazanmonshed
Copy link

Hello Can you provide me with more details about tmux

@OddmarDam
Copy link

what does that <CR> means??

Carriage Return

@isaacaddis
Copy link

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

@r2evans
Copy link

r2evans 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
Copy link

davegallant 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. :)

@savolla
Copy link

savolla commented May 30, 2020

what does that <CR> means??

Enter key

@reventusth
Copy link

v useful ty ty

@yogendrajs
Copy link

Thanks so much! 💯

@trisha
Copy link

trisha commented Jun 5, 2023

% 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.

Agreed with this, when I hear "horizontal split" I expect that the split line is horizontal, that they're split across the horizon, or horizon-ally. But thank you so much for putting this together!

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