tmux 多終端管理器
在日常工作中,總是感覺用PUTTY連線Linux一個視窗不夠用,再開新的視窗又比較麻煩,於是想到是否可以在一個SSH會話中可以開啟多個終端,最後我找到了很強大而且使用廣泛的tmux多終端管理器。
tmux是一個優秀的終端複用軟體,類似GNU Screen,但來自於OpenBSD,採用BSD授權。使用它最直觀的好處就是,透過一個終端登入遠端主機並執行tmux後,在其中可以開啟多個控制檯而無需再使用更多的SSH會話來連線這臺遠端主機;其功能遠不止於此。
1、安裝
在freebsd中可以直接使用ports工具安裝,位置在:/usr/ports/sysutils/tmux/,ubuntu系統下預設自帶byou,與tmux很像,甚至快捷鍵都是一樣的。這裡只詳細說明在Centos6.3下如何安裝和使用tmux的。
Centos6.3的軟體庫裡沒有tmux,只有screen,所以要想使用tmux需要自己編譯安裝。
(1) 下載tmux:
wget
(2) 編譯安裝:
tar zxvf tmux-1.6.tar.gz
cd tmux-1.6
./configure
make;make install
2、啟動tmux
安裝完成後輸入命令tmux即可開啟軟體,介面十分簡單,類似一個下方帶有狀態列的終端控制檯;但根據tmux的定義,在開啟了tmux伺服器後,會首先建立一個會話,而這個會話則會首先建立一個視窗,其中僅包含一個皮膚;也就是說,這裡看到的所謂終端控制檯應該稱作tmux的一個皮膚,雖然其使用方法與終端控制檯完全相同。
tmux使用C/S模型構建,主要包括以下單元模組:
一個tmux命令執行後啟動一個tmux服務
一個tmux服務可以擁有多個session,一個session可以看作是tmux管理下的偽終端的一個集合
一個session可能會有多個window與之關聯,每個window都是一個偽終端,會佔據整個螢幕
一個window可以被分割成多個pane
多個pane的編號規則,以3個pane為例:
0
1 | 2
3、tmux快捷鍵
tmux在會話中使用大量的快捷鍵來控制多個視窗、多個會話等。
[cpp] view plaincopy在CODE上檢視程式碼片派生到我的程式碼片
Ctrl+b // 啟用控制檯;此時以下按鍵生效
系統操作
tmux ls //列出已有會話(list-sessions)
tmux a -t 1//來連線到第一個會話
c-b t //鐘錶
? // 列出所有快捷鍵;按q返回
d // 脫離當前會話;這樣可以暫時返回Shell介面,輸入tmux attach能夠重新進入之前的會話
D // 選擇要脫離的會話;在同時開啟了多個會話時使用
Ctrl+z // 掛起當前會話
r // 強制重繪未脫離的會話
s // 選擇並切換會話;在同時開啟了多個會話時使用
: // 進入命令列模式;此時可以輸入支援的命令,例如kill-server可以關閉伺服器
[ // 進入複製模式;此時的操作與vi/emacs相同,按q/Esc退出
~ // 列出提示資訊快取;其中包含了之前tmux返回的各種提示資訊
視窗操作
c // 建立新視窗
& // 關閉當前視窗
數字鍵 // 切換至指定視窗
p // 切換至上一視窗
n // 切換至下一視窗
l // 在前後兩個視窗間互相切換
w // 透過視窗列表切換視窗
, // 重新命名當前視窗;這樣便於識別
. // 修改當前視窗編號;相當於視窗重新排序
f // 在所有視窗中查詢指定文字
皮膚操作
” // 將當前皮膚平分為上下兩塊
% // 將當前皮膚平分為左右兩塊
x // 關閉當前皮膚
! // 將當前皮膚置於新視窗;即新建一個視窗,其中僅包含當前皮膚
Ctrl+方向鍵 // 以1個單元格為單位移動邊緣以調整當前皮膚大小
Alt+方向鍵 // 以5個單元格為單位移動邊緣以調整當前皮膚大小
Space // 在預置的皮膚佈局中迴圈切換;依次包括even-horizontal、even-vertical、main-horizontal、main-vertical、tiled
q // 顯示皮膚編號
o // 在當前視窗中選擇下一皮膚
方向鍵 // 移動游標以選擇皮膚
{ // 向前置換當前皮膚
} // 向後置換當前皮膚
Alt+o // 逆時針旋轉當前視窗的皮膚
Ctrl+o // 順時針旋轉當前視窗的皮膚
4、配置檔案
tmux配置檔案在~/.tmux.conf和/etc/tmux.conf中,配置檔案中可以修改預設繫結的快捷鍵
配置檔案示例:
[cpp] view plaincopy在CODE上檢視程式碼片派生到我的程式碼片
// 此類配置可以在命令列模式中輸入show-options -g查詢
set-option -g base-index 1 // 視窗的初始序號;預設為0,這裡設定為1
set-option -g display-time 5000 // 提示資訊的持續時間;設定足夠的時間以避免看不清提示,單位為毫秒
set-option -g repeat-time 1000 // 控制檯啟用後的持續時間;設定合適的時間以避免每次操作都要先啟用控制檯,單位為毫秒
set-option -g status-keys vi // 操作狀態列時的預設鍵盤佈局;可以設定為vi或emacs
set-option -g status-right “#(date +%H:%M’ ‘)” // 狀態列右方的內容;這裡的設定將得到類似23:59的顯示
set-option -g status-right-length 10 // 狀態列右方的內容長度;建議把更多的空間留給狀態列左方(用於列出當前視窗)
set-option -g status-utf8 on // 開啟狀態列的UTF-8支援
// 此類設定可以在命令列模式中輸入show-window-options -g查詢
set-window-option -g mode-keys vi // 複製模式中的預設鍵盤佈局;可以設定為vi或emacs
set-window-option -g utf8 on // 開啟視窗的UTF-8支援
// 將啟用控制檯的快捷鍵由Ctrl+b修改為Ctrl+a,Ctrl+a是Screen的快捷鍵
set-option -g prefix C-a
unbind-key C-b
bind-key C-a send-prefix
// 新增自定義快捷鍵
bind-key z kill-session // 按z結束當前會話;相當於進入命令列模式後輸入kill-session
bind-key h select-layout even-horizontal // 按h將當前皮膚佈局切換為even-horizontal;相當於進入命令列模式後輸入select-layout even-horizontal
bind-key v select-layout even-vertical // 按v將當前皮膚佈局切換為even-vertical;相當於進入命令列模式後輸入select-layout even-vertical
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/66634/viewspace-1193993/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Tmux 終端命令列介紹UX命令列
- 終端複用軟體 tmuxUX
- tmux 終端複用詳解UX
- 終端SSH工具:SecureCRT MacOS 多種網路協議終端模擬軟體SecurecrtMac協議
- tmuxUX
- Kali Linux開啟多個終端視窗Linux
- screen 命令示例:管理多個終端會話會話
- html5多終端瀏覽器相容HTML瀏覽器
- 在Centos 8 伺服器用tmux多開視窗CentOS伺服器UX
- MsgSender帶K線的多鏈DeFi交易終端Gse
- tmux使用UX
- tmux配置UX
- php多程式管理器PHP
- golang多版本管理器Golang
- 多終端覆蓋、檔案備份共享更方便
- Tmux使用教程UX
- Tmux 使用教程UX
- tmux resurrect 配置UX
- 程式設計師必備之終端模擬器,讓你的終端世界多一抹“顏色”程式設計師
- LINUX命令列終端提示符多種實用技巧!Linux命令列
- 如何在Linux終端同時執行多個Linux命令Linux
- 玩轉Mac終端:Mac 終端常用知識Mac
- tmux 使用小記UX
- tmux指令記錄UX
- Tmux使用介紹UX
- 在tmux中copyUX
- 快速重拾 TmuxUX
- tmux使用備忘UX
- 使用 Terminator 在一個視窗中執行多個終端
- 勒索病毒究竟多嚴重? 日均10W+終端被感染!
- Linux終端是什麼?終端有什麼作用?Linux
- Linux 終端複用器tmux,實現任務後臺執行,即會話不間斷,踩坑及使用要點記錄Linux會話
- SSH終端使用
- 終端快捷鍵
- CentOS 終端 美化CentOS
- 如何使用 Distrobox 在終端內執行多個 Linux 發行版Linux
- [20200228]tmux completion.txtUX
- tmux的超絕便利UX
- 遠端桌面連線管理器,遠端桌面連線管理器遠端連線vps撥號伺服器的方式伺服器