Tmux 사용법

구성요소

session

  • tmux 실행 단위, 여러개의 window로 구성됨

    window

  • 터미널 화면, session 내에서 탭처럼 사용할 수 있음

    pane

  • window 내에서 화면 분

    status bar

  • 화면 아래 표시되는 상태

설치

Mac (homebrew)

$ brew install tmux

명령어

모든 명령어를 실행하기 전에는 ctrl+b를 입력해야 함

session 관련

tumx 진입 전

# 새 세션 생성
tmux new -s <session-name>
        
# 세션 목록 보기 (list-session)
tmux ls
        
# 세션 다시 시작
tmux attach -t {session-number or session-name}

tumx 진입 전

# 세션 종료
(tmux에서) exit
        
# 세션 이름 수정
ctrl + b, $
        
# 세션 중단하기 (detached)
> ctrl + b, d

window 관련

# 새 윈도우 생성
ctrl + b, c

# 세션 생성시 윈도우랑 같이 생성
tmux new -s <session-name> -n <window-name>

# 윈도우 이름 수정
ctrl + b, ,

# 윈도우 종료
ctrl + b, &
ctrl + d

# 윈도우 이동
ctrl + b, 0-9 : window number
          n : next window
          p : prev window
          l : last window
          w : window selector
          f : find by name

# 윈도우 번호설정
ctrl + b, :move-window -t 윈도우 번호

pane 관련

# 틀 나누기
ctrl + b, % : 횡 분할
ctrl + b, " : 종 분할

# 틀 확대
ctrl + b, z

# 틀 이동
ctrl + b, q : 화면에 나오는 숫자키
ctrl + b, o : 순서대로 이동
ctrl + b, arrow : 방향키 이동

# 틀 삭제
ctrl + b, x
ctrl + d

# 틀 사이즈 조절
(ctrl + b, :)
resize-pane -L 10
            -R 10
            -D 10
            -U 10

# 틀 레이아웃 변경
ctrl + b, spacebar

기타

# 단축키 목록
ctrl + b, ?

# 키 연결 및 해제 bind and unbind
(ctrl + b, :)
bind-key [-cnr] [-t key-table] key command [arguments]
unbind-key [-acn] [t key-table] key

# copy mode 진입
ctrl + b, [

# 빠져나오기
(copy mode에서) q or ESC

# 이동
arrow : 커서 이동
pageUp, pageDown : 페이지 이동 (iTerm에서는 fn + up, down, terminal에서는 alt + up, down)

# 옵션 설정 `set` and `setw`
set -g <option-name> <option-value>  : set-option
setw -g <option-name> <option-value> : set-window-option

설정 (~/.tmux.conf)

~/.tmux.conf 파일을 생성해 시작할 때 자동으로 설정을 불러옴

set -g mouse on

setw -g mode-keys vi

# Use Alt-arrow keys without prefix key to switch panes
bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D

# Shift arrow to switch windows
bind -n S-Left  previous-window
bind -n S-Right next-window

# scrollback buffer size increase
set -g history-limit 100000

# change window order
bind-key -n C-S-Left swap-window -t -1
bind-key -n C-S-Right swap-window -t +1

# disable window name auto change
set-option -g allow-rename off

# bar color
set -g status-bg black
set -g status-fg white

# 동시 명령어 사용
set synchronize-panes on
set synchronize-panes on

댓글남기기