Tmux Cheatsheet
I use linux terminal all day, and if you are like me, you should use tmux, which enables a number of terminals to be created, accessed, and controlled from a single screen, just to be more productive!
So, there’re some essential commands for tmux down below.
start a new session
tmux # session name will be 0,1,2, ... by default
tmux new -s <session name> # you can set a custom session namerename an existing session
tmux rename-session -t <old name> <new name>detach current session
C-b dC-b D
list running sessions
tmux lsattach an existing session
tmux attach -t <session name>or
tmux a -t <session name>split current pane horizontally
C-b %
split current pane vertically
C-b "
switch between panes
C-b <arrow key> # in directionC-b o # by sequence
make the current pane full screen(same for exit)
C-b z
resize the current pane in an arrow direction
C-b C-<arrow key>
closing the current pane
C-d or exit
create a new window
C-b c
rename the current window
C-b ,
switch between windows
C-b p # previousC-b n # nextC-b <num key> # by number
to use vim color scheme inside tmux
Create a tmux config file
touch ~/.tmux.confPut these lines in the file:
wait, what? I can’t scroll up/down inside tmux. it sucks, huh?
Nah, you can do it. You can get into scrolling mode by C-b [, and quit by q. Very cool :XD
even better, we can persist tmux sessions between reboots. soooo cool, isn’t it?
Tmux has its own plugin ecosystem. A plugin called tmux-resurrect enables us to persist sessions across reboots.
So, there are two ways of installing tmux-resurrect plugin, and the manual way is my preferred one because I do not use many plugins for tmux.
mkdir -p ~/.tmux
cd ~/.tmux
git clone https://github.com/tmux-plugins/tmux-resurrectThen add this line to the bottom of ~/.tmux.conf:
run-shell ~/.tmux/tmux-resurrect/resurrect.tmuxReload tmux environment:
tmux source-file ~/.tmux.confWowooo, you are now able to persist any number of sessions across reboots
C-bC-s- saveC-bC-r- restore
That’s it. Happy tmuxing! :XD