Tmux
Tmux
Introduction
- 他可以快速且簡單的分割 terminal 的視窗
- 其實基本上他就是開啟一個 server 共同管理所有的 session,並同步輸入、輸出
Config
1 | vim ~/.tmux.conf |
設定完之後的結果
prefix:
ctrl+asplit pane
- horizontal:
${prefix} | - vertical:
${prefix} -
- horizontal:
pane navigation
- left:
${prefix} h - down:
${prefix} j - up:
${prefix} k - right:
${prefix} l
- left:
pane resize
${prefix} Left${prefix} Down${prefix} Up${prefix} Right
clear history
ctrl+i
Command
tmux啟動tmux ls列出所有 sessiontmux detach背景執行${prefix} d
tmux attach -t n回到第 n 個 session (target)tmux kill-session -t n關閉第 n 個 sessiontmux kill-session -a關閉除了自己的所有 session (all)- Copy/paste the text
- method 1:
- copy: select the text with
shift. - paste:
shiftkey +middle-button
- copy: select the text with
- method 2:
- copy:
Ctrl+b, [Enter edit modeCtrl + spacehighlight textsAlt+wCopies selected text into tmux clipboard
- paste:
Ctrl+b, ]- copy to system clipboard
- see ref
- copy to system clipboard
- copy:
- ref:
- method 1:
Session
${prefix} d將目前的 session 放到背景執行 (detach)${prefix} s以視覺化選單切換 session(select)${prefix} L切換至上一個使用過的 session${prefix} (切換至上一個 session${prefix} )切換至下一個 session${prefix} $重新命名目前的 session。${prefix} [進入複製模式${prefix} :進入命令模式${prefix} ?查詢快捷鍵
Window
${prefix} c開啟新 window(create)${prefix} &關閉 window${prefix} w以視覺化選單切換 window${prefix} 0~9切換至指定 window${prefix} n切換到下一個 window (next)${prefix} p切換到上一個 window (previous)${prefix} f找尋指定 pattern 並跳到該 window (find)${prefix} ,命名 window
Pane
${prefix} |水平分割出 pane${prefix} %水平分割出 pane
${prefix} -垂直分割出 pane${prefix} "垂直分割出 pane
${prefix} !將目前的 pane 獨立生成一個 window${prefix} 方向鍵pane 大小調整${prefix} o以輪流方式輪流切換 pane (order)${prefix} h,j,k,l(vim 方向鍵) 切換游標所在的 pane${prefix} 方向鍵切換游標所在的 pane
${prefix} space重新佈局分割視窗,內建多種佈局。 (沒試過)${prefix} x關閉目前 pane${prefix} q顯示 pane 編號${prefix} {交換 pane 位置(向前)${prefix} }交換 pane 位置(向後)