Tmux最大好處就是可以開啟多視窗並快速切換或分割視窗,讓使用者可以更效率的去工作,這邊就簡單紀錄如何安裝Tmux與簡單常用到的指令。
步驟一:安裝oh my tmux
這邊直接去Git下載Oh my tmux!,安裝步驟如下
$ cd ~
$ git clone https://github.com/gpakosz/.tmux.git
$ ln -s -f .tmux/.tmux.conf
$ cp .tmux/.tmux.conf.local .
步驟二:安裝Plugin
新增兩個Plugin,編輯.tmux.conf.local,加入下方內容(應該會有兩個預設的plugin在裡面,直接加入到下方即可)
- tmux-resurrect可以保存視窗
- tmux-continuum這個試配合resurrect使用,在下次使用tmux的時候,會自動載入上次建立好的視窗內容
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @continuum-restore 'on' #下次進入tmux自動載入上次內容
set -g @continuum-save-interval '5' #5分鐘存檔一次內容
set -g @resurrect-capture-pane-contents 'on' #自動擷取Panel內容
set -g @resurrect-save-shell-history 'on' #自動儲存shell歷史
set -g @resurrect-processes 'ssh' #自動連接ssh
步驟三:使用Tmux並建立視窗與命名
前兩個步驟安裝完後,直接輸入tmux就可以開始使用,使用tmux功能都是從快捷鍵開始,安裝好後oh my tmux快捷鍵除了原來的Ctrl + b外,還可以使用Ctrl + a,以下就是建立視窗會用到的方式
- 建立Panel - 快捷鍵+c
- 切換視窗 - 快捷鍵+w
- 修改Window名稱,快捷鍵+:,輸入reanme-window name
如下圖,可以依照自己習慣命名,快速切換視窗不用一個一個開terminal去連線
步驟四:分割視窗
Tmux可以在一個window分割多個Panel,請看下面介紹方式
- 水平分割視窗 - 快捷鍵+ -
- 垂直分割視窗 - 快捷鍵+ _
- 切換視窗 - 快捷鍵加方向鍵
- 修改視窗大小與切換視窗 - 快捷鍵+ m,這是on my tmux功能,可以用滑鼠去調整視窗大小與切換視窗,有興趣可以去github上有展示的gif可以看。
- 面板最大化 - 快捷鍵+ z,分割視窗後如果想要先看某一個視窗,可以先把該面板最大化,恢復原來分割畫面,就再輸入一次快捷鍵+ z。
- 刪除Panel - 快捷鍵 + x,如果分割太多或想重新分割就可以用到。
- 刪除Window - 快捷鍵 + &
- 排序視窗順序 - 快捷鍵+:,輸入choose-tree -s -O name
如下圖你可以打造你想要面板,我這邊是切了三個視窗,可以同時看不同的資訊。
步驟五:消除resurrect所造成的終端輸出history紀錄
Q: 重開機後,之前建立的Panel都消失了怎麼辦
重開機後別急著下tmux或是attach之類的命令,先下# tmux new-window,然後再下# tmux attach,連進去後輸入快捷鍵+ctrl r去恢復之前的Panel,如果恢復不了那就用下面的方法。
# cd .tmux/resurrect #這目錄會有之前存下Panel的檔案,找出你之前存好的Panel
# rm last #resurrect會讀取這個檔案作為還原檔案
# ln -s tmux_resurrect_20220530T154511.txt last #使用再前面找到保存好的Panel檔案再重新link
# tmux new-window
# tmux attach
快捷鍵 -> Ctrl+R 即可恢復之前的Panel
Menu Reorder
#!/bin/sh
# Shift current ids far out
tmux list-windows | awk -F: '{system("tmux move-window -s "$1" -t 100"$1)}'
# sort and move windows
tmux list-windows | sort -sk2 | awk -F: '{system("tmux move-window -s "$1" -t "NR)}'
參考資料:
Tmux使用手册 | louis blog (louiszhai.github.io)
https://github.com/guevara/read-it-later/issues/8117
沒有留言:
張貼留言