tmux基本操做

tmux是什麼

tmux(terminal multiplexer)是Linux上的終端複用神器,可從一個屏幕上管理多個終端(準確說是僞終端)。使用該工具,用戶能夠鏈接或斷開會話,而保持終端在後臺運行。相似的工具還有screen,我的對這兩者的使用感覺是,用過tmux就不再想用screen了。shell

tmux基本結構

tmux的結構包括會話(session)、窗口(window)、窗格(pane)三部分,會話實質是僞終端的集合,每一個窗格表示一個僞終端,多個窗格展示在一個屏幕上,這一屏幕就叫窗口。基本結構及狀態信息以下圖所示:vim

tmux基本操做

基本的操做無非就是對會話、窗口、窗格進行管理,包括建立、關閉、重命名、鏈接、分離、選擇等等。bash

通常使用命令和快捷鍵進行操做,可在系統shell終端和tmux命令模式(相似vim的命令模式)下使用命令,或者在tmux終端使用快捷鍵。session

tmux默認的快捷鍵前綴是Ctrl+b(下文用prefix指代),按下前綴組合鍵後鬆開,再按下命令鍵進行快捷操做,好比使用prefix d分離會話(應該寫做prefix d而不是prefix+d,由於d鍵不須要與prefix同時按下)。工具

快捷鍵能夠自定義,好比將前綴改成Ctrl+a,但須要保留shell默認的Ctrl+a快捷鍵,按以下所示修改~/.tmux.conf文件:spa

1 set-option -g prefix C-a
2 unbind-key C-b
3 bind-key C-a send-prefix
4 bind-key R source-file ~/.tmux.conf \; display-message "~/.tmux.conf reloaded."

如今已將原先的Ctrl+aprefix Ctrl+a取代,即須要按兩次Ctrl+a生效code

第4行的做用是使用prefix r從新加載配置文件,並輸出提示,不然須要關閉會話後配置文件才能生效,也可手動加載配置文件,在tmux終端輸入"prefix :"進入命令模式,用source-file命令加載配置文件。server

注意,將多個命令寫在一塊兒做爲命令序列時,命令之間要用空格和分號分隔。 blog

 

會話管理 

經常使用命令教程

tmux new  建立默認名稱的會話(在tmux命令模式使用new命令可實現一樣的功能,其餘命令同理,後文再也不列出tmux終端命令)

tmux new -s mysession  建立名爲mysession的會話

tmux ls  顯示會話列表

tmux a  鏈接上一個會話

tmux a -t mysession  鏈接指定會話

tmux rename -t s1 s2  重命名會話s1爲s2

tmux kill-session  關閉上次打開的會話

tmux kill-session -t s1  關閉會話s1

tmux kill-session -a -t s1  關閉除s1外的全部會話

tmux kill-server  關閉全部會話

經常使用快捷鍵

prefix s  列出會話,可進行切換

prefix $  重命名會話

prefix d  分離當前會話

prefix D  分離指定會話

  

窗口管理

prefix c  建立一個新窗口

prefix ,  重命名當前窗口

prefix w  列出全部窗口,可進行切換

prefix n  進入下一個窗口

prefix p  進入上一個窗口

prefix l  進入以前操做的窗口

prefix 0~9  選擇編號0~9對應的窗口

prefix .  修改當前窗口索引編號

prefix '  切換至指定編號(可大於9)的窗口

prefix f  根據顯示的內容搜索窗格

prefix &  關閉當前窗口

 

窗格管理

prefix %  水平方向建立窗格

prefix "  垂直方向建立窗格

prefix Up|Down|Left|Right  根據箭頭方向切換窗格

prefix q  顯示窗格編號

prefix o  順時針切換窗格

prefix }  與下一個窗格交換位置

prefix {  與上一個窗格交換位置

prefix x  關閉當前窗格

prefix space(空格鍵)  從新排列當前窗口下的全部窗格

prefix !  將當前窗格置於新窗口

prefix Ctrl+o  逆時針旋轉當前窗口的窗格

prefix t  在當前窗格顯示時間

prefix z  放大當前窗格(再次按下將還原)

prefix i  顯示當前窗格信息

 

  

其餘命令

tmux list-key  列出全部綁定的鍵,等同於prefix ?

tmux list-command  列出全部命令

  

以上爲tmux的常見操做,基本能夠知足大部分的工做需求,至於更高端的操做待往後再整理。

 

--------------------------------------------------

參考資料:

1. man tmux;

2. 《Tmux 速成教程:技巧和調整》。

相關文章
相關標籤/搜索