tmux在Linux工作中蠻常用到的,CLI操作界面,是多session的console管理工具,學會使用的話,相較於開關terminal,好處多多。
常用tmux指令
常用 tmux
tmux在工作中蠻常用到的,是在Linux系統下,一種多session的console管理工具,這邊紀錄一下
tmux專有名詞
- window => 分頁視窗
- pane => 分割視窗 (一分頁視窗可有多個分割視窗)
- session => 每次使用tmux的階段,不同階段是獨立存在的
使用情境
以開發韌體程式為例
一般使用console會先打開terminal
然後進入自己想要的資料夾下面,打開相關的程式碼
需要測試運行時,可能會開啟新的console
然後下達運行的指令
有問題的話則切換畫面回編輯器進行修改
有其他專案要處理的話
可能會登入該專案的資料夾
再用編輯器打開相關的程式碼
重複上述的動作
要下班時,登出系統並關機
明早上班開機,重新上述動作
這邊可以先看看可能會用到的指令
key-binding
按鍵 | 功能 | 備註 |
---|---|---|
Prefix | Ctrl + b | 發動tmux操作前的起始鍵 |
開/關 Window
按鍵 | 功能 | 備註 |
---|---|---|
開新視窗 | prefix c | |
關閉視窗 | – | 關閉分頁或是分割視窗 |
關閉分頁視窗 | prefix & | |
關閉分割視窗 | prefix x | |
開啟水平分隔視窗 | prefix “ | |
開啟垂直分隔視窗 | prefix % | |
縮放個別分割視窗 | prefix z |
操作 Window
按鍵 | 功能 | 備註 |
---|---|---|
調整分隔視窗大小 | 長壓prefix [↑/↓/→/←] | |
重新命名 | prefix , | |
切換視窗 | – | 切換分頁或是分割視窗 |
切換分頁視窗 | prefix + w | 類似 win+tab 效果 |
– | prefix [n/p] | 前後切換分頁視窗 |
切換分割視窗 | prefix [↑/↓/→/←] | |
切換布局 | prefix space | tmux有內建分割視窗的layout |
session管理
應用上,session相對於window,session更像是用於不同project
命令 | 功能 |
---|---|
tmux new [-c 起始目錄] [-s session-name] | 新增 session |
tmux kill-session [-t 目標session] | 刪除 session |
tmux kill-server | 刪除所有session |
tmux rename [-t 目標session] new-name | 重新命名 |
tmux ls | 列表session |
tmux attach [-c 起始目錄] [-t 目標session] | attach特定session |
其他
命令 | 功能 |
---|---|
prefix ? | 說明 |
prefix [ | 滑動模式 (讀取上方的資料) |
Pg up, Pg dn | 上下移動 (等同滑鼠滾輪上下滑動) |
q | 離開滑動模式 |
prefix ~ | 顯示tmux的歷史訊息 |
使用tmux後的情境
打開console
以第一個專案名稱建立起第一個tmux session
然後在該session下
開啟editor和console運行環境
可以使用分頁視窗,或是分割視窗進行操作
有新專案近來時
detach目前的session
以該專案名稱建立起第二個tmux session
重複上述動作
兩者需要切換時,以session進行和detach/attach動作
避免分別切換editor和console出現問題
下班後,可用tmux的外掛功能
儲存目前的session狀態
明日開機restore session
繼續閱讀:強化tmux操作