倒數第二天了,來講TMUX吧。
有時候我們會需要同時多個terminal,但可能因為環境的關係只能開一個console,因此我們會需要一個terminal multiplexer(終端復用器)來讓用戶可以在一個console中同時開啟多個視窗或者分割視窗區塊。
Linux系統中常用的terminal multiplexer為tmux,tmux 是一套 tty 下的多視窗程式,可於視窗中切出多個水平或垂直視窗(panes),並可開啟不同的 Session。簡單來說tmux主要就是用於session與視窗管理。
tmux 會在同一個 session (連線狀態下的執行環境)保存這些視窗和視窗區塊。我們可以在任何時間離開這個連線。這被稱為 detaching。
然後 tmux 會繼續維持這個 session 直到您把 tmux server 砍掉或者重開機的時候。然後重點是我們隨時可以在重新回到(attaching)上次離開 session 的狀態。
可惜的是tmux在大部分作業系統都不是內建軟體,所以在使用前會需要使用自己系統的套件管理器來安裝tmux,以Ubuntu來說,可以使用sudo apt install tmux
來安裝,macOS可以使用brew install tmux
,不過windows就只能建立bash環境後使用該環境裡面的套件管理器來安裝tmux
我們可以在tmux session中輸入tmux的相關命令或是使用快捷鍵來執行相關動作。
在開始說明快捷鍵前先講一下tmux中快捷鍵顯示的格式C-\<kbd>
: 同時按下Ctrl與對應按鍵M-\<kbd>
: 同時按下meta鍵與對應按鍵,這邊的meta鍵通常是AltS-\<kbd>
: 同時按下Shift與對應按鍵bindkey
: 預設為C-b
,為觸發tmux命令的prefix:command
: 在command模式輸入指令,等價於$ tmux command
bindkey ?
tmux lsk -N
bindkey %
bindkey "
bindkey <arrow>
bindkey :
bindkey d
$ tmux attach -t <sessionName>
:killserver
https://andyyou.github.io/2017/11/27/tmux-notes/
https://github.com/tmux/tmux/wiki/Getting-Started