Tmux對於常常在使用Linux或者Mac作業系統的朋友來說是一個非常方便的工具, 可以讓我們工作效率提升, 快速切換多個終端畫面進行多工處理, 但使用時難免遇到一些狀況跟需求, 而這次分享的主要是如何複製貼上, 相信這也是大部分使用者會遇到的情境, 因此進行經驗的分享與交流。
輸入指令的快捷鍵: Ctrl + b之後按下「:」。
開啟輸入框之後, 鍵入「mouse on」, 讓畫面可以透過游標進行選取。
之後直接將游標移動到需要的文字段落(通常是LOG)上選取文字範圍, 選完後, 該文字段落就已經被儲存到黏貼簿的緩衝區。
我們切換到Tmux之下的另外一個Panel之後就能夠使用「Ctrl + b + ]」進行貼上了。
Tmux的複製模式預設只會將文本複製到Tmux剪貼簿上, 那如果要貼到系統的話, 則需要額外的套件「xclip」, 它可以做為Tmux與系統之間的橋樑, 讓我們的資料順利通行。
sudo apt-get install xclip
tmux show-buffer | xclip -selection clipboard
左邊的視窗, 我們很單純的用滑鼠將文字框起來, 當放開的那一剎那就會自動複製到Tmux剪貼不了, 接著我們在右邊分別執行:
# 透過xclip讓剪貼簿資料互通
tmux show-buffer | xclip -selection clipboard
# 貼上
ctrl + shift + v
上述的操作總共會進行三個動作, 分別為: 「滑鼠選文字 → 打指令 → 貼上」, 我們想要讓流程更加簡化, 只需要「滑鼠選文字 → 貼上」, 行不行? 就來試試看吧!
我們將以下的代碼附加到Tmux配置文件中
# 編輯配置檔
vi ~/.tmux.conf
# 加入以下兩行
bind C-c run "tmux save-buffer - | xclip -i -sel clipboard"
bind C-v run "tmux set-buffer "$(xclip -o -sel clipboard)"; tmux paste-buffer"
接著重啟一下tmux即可。
# 假設已經開啟tmux panel的狀況之下
ctrl + b + :
restart-server
# 假設尚未開啟任何tmux panel
tmux new -s xxx
最後直接使用ctrl + c 複製, ctrl + v 貼上即可。
# ctrl + b + :
:set-option -g mouse on
使用tmux的過程中雖然常常分割畫面或者切換非常的方便, 隨著我們用的越深入時,有時候追查LOG也需要將LOG複製一番進行分析, 一直找不到時間好好的設定一下這個部份, 趁著空閒親自設定過一遍並將過程整理分享給剛好遇到狀況的朋友。
喜歡撰寫文章的你,不妨來了解一下:
Web3.0時代下為創作者、閱讀者打造的專屬共贏平台 — 為什麼要加入?
歡迎加入一起練習寫作,賺取知識