被稱作 Linux 神器的工具

入門之後我也愛上它了,讓 terminal 變得非常的靈活

安裝

mac

1
$ brew install tmux

ubuntu / debian

apt 上裝的可能會太舊,直接裝 github 上最新 release 的

參考別人寫好的腳本: https://gist.github.com/P7h/91e14096374075f5316e

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
VERSION=2.6
sudo apt -y remove tmux
sudo apt -y install wget tar libevent-dev libncurses-dev
wget https://github.com/tmux/tmux/releases/download/${VERSION}/tmux-${VERSION}.tar.gz
tar xf tmux-${VERSION}.tar.gz
rm -f tmux-${VERSION}.tar.gz
cd tmux-${VERSION}
./configure
make
sudo make install
cd -
sudo rm -rf /usr/local/src/tmux-*
sudo mv tmux-${VERSION} /usr/local/src

tmux.conf

放上幾個我覺得實用的設定

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
set -g default-terminal "screen-256color"

# enable mouse
set -g mouse on


# new prefix
unbind-key C-b
set -g prefix C-a
bind-key C-a send-prefix

# <prefix> + r | reloading config
bind-key r source-file ~/.tmux.conf \; display-message "Yo~! .tmux.conf reloaded!"

bind-key \ split-window -h -c '#{pane_current_path}'
bind-key - split-window -v -c '#{pane_current_path}'

prefix

預設是 ctrl + b,不過上面的設定我改成 ctrl + a,目前使用是算順手
也有人設定成 ctrl + q 之類的

Usage

建立一個新的 session

1
$ tmux

建立一個新的 session 並且設定名稱

1
$ tmux new -s name

列出目前有的 session

1
$ tmux ls

連回 session

1
$ tmux a

Tmux 使用概念

畫面單位由大到小會是 session > window > pane

session: 一個整個 tmux 的畫面 window: 分頁 pane: 切割畫面

shortcut

部分的 shortcut 筆記,之後再整理完整一點的

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
c create new window
n switch to next window
p switch to previous window

\ split h
- split v

z zoom in/out current pane

w list winodws
s list sessions

d dettach

Reference