Have you ever felt the discomfort of having to log in twice into a server so you can run two applications simultaneously? Have you wondered if there could be an easier way? Or are you looking for an easy way to start a long process on a server, detach from it, and connect back to the same session from a different client? Well, there’s a solution for all your worries. It’s called tmux! tmux allows you split a terminal into several subsections. It also allows you start a session over ssh and log out while the session keeps running, then log in via ssh on a possibly different machine and resume your session. So, the client becomes more irrelevant. I’ll discuss how to do a few things using tmux.
How to start a new tmux session run the following
tmux new -s session-name
or run the following
It’s recommended to use the first format as it gives your sessions more meaningful names.
To detach from a session, run the following:
or run the following
To list sessions, use the command
Note that tmux uses Ctrl-b as a prefix for its operations by default. This can be changed though as tmux is highly configurable.
To attach to an existing session use the following:
This attaches to the first available session. You can also use the following:
tmux a -t session-name
To attach to a named session.
When logged in to a session, you can split the window into panes.
To split the window vertically, use the following command:
To split it horizontally use the command:
To switch pane, use the command
Ctrl-b arrow key
To resize a pane use the following command:
Hold Ctrl-b, then hold an arrow key
To scroll up a page on OS X, press Ctrl-b then [. This will put you in scroll mode. You can then use arrow keys to go up and down. To move page by page while in scroll mode, using PageUp and PageDown keys. On a laptop without PageUp key, you can simulate it by pressing Cmd-Up Arrow. To exit scroll mode press q.
To kill or delete a session use the command:
tmux kill-session -t myname
Some helpful resources on tmux can be found at:
dayid’s screen and tmux cheat sheet. http://www.dayid.org/os/notes/tm.html
tmux Tutorial – Split Terminal Windows Easily. http://lukaszwrobel.pl/blog/tmux-tutorial-split-terminal-windows-easily
A tmux Primer. https://danielmiessler.com/study/tmux/