what is tmux?
개요
GUI 환경에서 터미널을 사용하다보면, 탭을 사용하거나 창을 사용하여 여러창을 띄워놓고 사용하곤 한다. 이러면 원하는 터미널 창을 찾기 힘들때가 많다. 이럴때, 터미널 화면을 분할해서 사용하기 위한 방법이 바로 tmux 이다.
- site : https://github.com/tmux
컨셉
- session : 하나 혹은 여러개의 윈도우를 말한다. tmux를 실행하면 하나의 session이 실행된다.
- window : 하나 혹은 여러개의 pane을 가르킨다.
- pane : window 내에 실행되는 터미널을 지칭한다. 한번에 하나의 pane이 활성화 된다.
- pane border : split 하였을때 각 pane의 경계면
- pane이 active 되었을때 주변의 border가 녹색으로 변함
사용자는 창을 분할해 여러개의 pane을 생성하여 이를 넘나들면서 사용할 수 있다.
—
명령어
실행
$ tmux new
새로운 session을 만든다.
- pane이 active 되었을때 주변의 border가 녹색으로 변함
사용자는 창을 분할해 여러개의 pane을 생성하여 이를 넘나들면서 사용할 수 있다.
—
attach
tmux는 session을 기준으로 실행되며, 이 session을 언제든지 dettach 하여 터미널로 돌아갔다 attach 하여 되돌아갈수 있다.
$ tmux attach -t <name>
tmux attach를 하면 최근 attach된 session이 복구되고, -t를 이용해 이름을 지정하면 해당 session이 복구된다.
prefix
Ctrl-b tmux 내에서 모든 명령어를 사용하기위한 prefix이다. 모든 명령어를 사용하기 전에 이 키를 입력한뒤에 명령어를 사용하면 된다.
tmux 단축키
- d : dettach 단축키이다. 현재 터미널에서 실행중인 tmux session을 종료하지 않고 나간다.
- %, “ : 윈도우를 나누는 명령어다. %는 수직으로, “는 수평으로 나눌수 있다.
- up, down, right, left : 위 명령어로 생성된 pane간에 이동할 수 있다.
- (Ctrl or Alt)-up, down, right, left : pane의 크기를 변경할 수 있다. ctrl을 누르면 조금, alt를 누르면 많이 변경된다.
- x : pane을 없앤다.
- n,p,l : 윈도우를 다른 윈도우로 바꾼다. 각각 다음, 이전, 마지막 윈도우로 바꾼다.
<Num>
: 숫자를 입력하면 해당하는 윈도우로 바뀐다.- s,w: treemode
- m : mark pane
- M : clear mark
:
: 명령어 모드로 들어간다.
명령어 모드
- neww : 새 윈도우를 만든다.
- swapp : 위에서 m 단축키를 사용했을때 마크된 pane을 현재 활성화된 pane과 위치를 바꾼다.
- movew : 윈도우를 특정한 인덱스로 지정할수 있다., -r 옵션을 사용하면 순서대로 재 인덱싱한다.