常用 tmux

tmux在Linux工作中蠻常用到的,CLI操作界面,是多session的console管理工具,學會使用的話,相較於開關terminal,好處多多。

常用tmux指令

常用 tmux

tmux在工作中蠻常用到的,是在Linux系統下,一種多session的console管理工具,這邊紀錄一下

tmux專有名詞

  1. window => 分頁視窗
  2. pane => 分割視窗 (一分頁視窗可有多個分割視窗)
  3. 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操作

發表留言