title: Tmux
date: 2016-05-27 20:48:52
tags: kali系統配置
0x00 什么是Tmux?
Tmux是一個工具,用于在一個終端窗口中運行多個終端會話,不僅如此,我們還可以通過Tmux是終端會話運行于后臺或者是按需接入,斷開會話。
Tmux使用C/S模型構建,主要包括以下單元模塊:
- server服務器。輸入tmux命令時就開啟了一個服務器。
- session會話:一個服務器可以包含多個會話
- window窗口:一個會話可以包含多個窗口。
- pane面板:一個窗口可以包含多個面板。
0x01 Tmux安裝
kali中已經默認安裝了Tmux,ubuntu下安裝指令:apt-get install tmux
安裝完成以后直接在shell中輸入:tmux便會啟動了。
0x02 Tmux的快捷鍵前綴(Prefix)
為了使自身的快捷鍵和其他軟件的快捷鍵互不干擾,Tmux 提供了一個快捷鍵前綴。當想要使用快捷鍵時,需要先按下快捷鍵前綴,然后再按下快捷鍵。Tmux 所使用的快捷鍵前綴默認是組合鍵 Ctrl-b.
0x03 Tmux的配置文件
每當開啟一新的會話時,Tmux都會讀取Tmux的配置文件~/.tmux.conf,我們將下面一行加入到配置文件中,這樣每次配置完成以后,只需要按下Ctrl-b r就可以重新加載配置并且使新的配置生效,而不用再開啟一個新的會話。
0x04 Tmux的特性
新建窗格
- 建立一個新的豎直放置的窗格(paner):
root@jack:~# Ctrl-b %
- 建立一個水平方向放置的窗格
root@jack:~# Ctrl-b "
- 窗格間移動光標,只需按下Tmux的快捷前綴,然后在按下對應的方向鍵就是了
窗口
在Tmux中,窗口(Windows)是個窗格(paner)容器,你可以將多個窗格放置在窗口中,并根據你的實際需要在窗口中排列多個窗格,也是完全取決于你的需要。
- 新建一個窗口:
root@jack:~# Ctrl-b c
若是想要切換窗口只需要按下Ctrl-b然后再按下窗口對應的數字就可以切換了!
會話
一個 Tmux 會話中可以包含多個窗口。會話功能非常簡單易用,例如可以為一個特定的項目創建一個專用的 Tmux 會話。若要創建一個新的會話,只需要在終端運行如下的命令:
tmux new <name-of-my-session>
在 Tmux 的會話間切換,若要獲取現有會話的列表,可以按下Ctrl-b s,列表中的每個會話都有一個 ID,該 ID 是從 0 開始的。按下對應的 ID 就可以進入會話。如果你已經創建了一個或多個會話,但是還沒有運行 Tmux,那么可以輸入如下命令以接入已開啟的會話。tmux attach
0x05 Tmux快捷鍵
快捷鍵前綴 | Ctrl+b | 激活控制臺 |
---|---|---|
系統操作 | ? | 列出所有快捷鍵;按q返回 |
系統操作 | d | 脫離當前會話;這樣可以暫時返回shell,輸入tmux attach能夠重新進入之前的會話 |
系統操作 | D | 選擇要脫離的會話,在同時開啟了多個會話時使用 |
系統操作 | Ctrl+z | 掛起當前會話 |
系統操作 | s | 選擇并且切換會話,在同時開啟了多個會話時使用 |
系統操作 | : | 進入命令行模式,此時可以輸入支持的命令,比如kill-server |
系統操作 | [ | 進入復制模式,此時操作與vi相同,q/Esc退出 |
系統操作 | ~ | 列出提示信息緩存,其中包含了之前tmux返回的各種提示信息 |
--- | --- | --- |
窗口操作 | c | 創建一個新窗口 |
窗口操作 | & | 關閉當前窗口 |
窗口操作 | 數字 | 切換到指定窗口 |
窗口操作 | p | 切換到上一個窗口 |
窗口操作 | n | 切換到下一個窗口 |
窗口操作 | l | 在前后兩個窗口間相互切換 |
窗口操作 | w | 通過窗口列表切換窗口 |
窗口操作 | ' | 重命名當前窗口,便于識別 |
窗口操作 | . | 修改當前窗口編號,相當于重新排序 |
窗口操作 | f | 在所有窗口中查找指定文本 |
--- | --- | --- |
面板操作 | " | 將當前面板分為上下兩塊 |
面板操作 | % | 將當前面板分為左右兩塊 |
面板操作 | x | 關閉當前面板 |
面板操作 | ! | 將當前面板置于新窗口,即新建一個窗口,其中僅包含當前面板 |
面板操作 | Ctrl+方向建 | 以一個單元格為單位移動邊緣以調整當前面板的大小 |
面板操作 | Alt+方向鍵 | 以五個單元格為單位移動邊緣以調整當前面板大小 |
面板操作 | q | 顯示面板標號 |
面板操作 | o | 在當前面板中選擇下面板 |
面板操作 | 方向鍵 | 移動光標以選擇面板 |
面板操作 | { | 向前置換當前面板 |
面板操作 | } | 向后置換當前面板 |