資料:
https://www.cnblogs.com/wangqiguo/p/8905081.html
sudo apt-get install tmux
tmux會話部分:
-
ctrl+b d 退出會話 (字母d是detach的縮寫)
我們經(jīng)常會用到tmux的組合鍵备徐,一般的組合鍵中都會加一個前綴也就是 ctrl+b
tmux ls 終端環(huán)境查看會話session列表
會話環(huán)境中運(yùn)行 ctrl+b s
可以看到在列出的列表中,只有1行瘟裸,說明只有一個session曹洽,
其中左邊的session1表示該session的名字当纱,中間2 windows說明該session1會話中有2個window畏铆,
右邊表示該會話創(chuàng)建的時(shí)間杂靶。
如果該機(jī)器中有多個tmux會話在后臺運(yùn)行坞古,那么這里會列出多行备韧。因?yàn)閠mux會話在后臺運(yùn)行
ps -ef | grep tmux tmux的進(jìn)程在后臺運(yùn)行來維持這些會話,exp : tmux new -s session1
ctrl+b s 來獲取當(dāng)前l(fā)inux機(jī)器上tmux所有的后臺會話列表
session會話名 window 會話窗口數(shù)量 attached表示當(dāng)前會話
此時(shí)可以通過方向鍵選擇會話并回車,在會話間進(jìn)行切換痪枫。tmux new -s 命令創(chuàng)建一個tmux會話并進(jìn)入該會話
tmux a -t session1 從終端環(huán)境進(jìn)入會話
如果在終端環(huán)境中運(yùn)行 tmux ls 查看有tmux會話正在后臺運(yùn)行织堂,如何進(jìn)入到該正在后臺中運(yùn)行的會話呢,通過運(yùn)行 tmux a -t session1 即可進(jìn)入到該已存在的會話 session1 中奶陈。其中a字母是attach的頭字母易阳,表示附加, -t 指定要進(jìn)入已存在的會話名吃粒,如果不存在則會報(bào)告 session not found 錯誤潦俺。tmux kill-session -t session1 銷毀會話
在會話環(huán)境中運(yùn)行ctrl+b :
(注意按組合鍵之后再按一個冒號鍵),狀態(tài)欄變成黃色之后提示我們可以在會話環(huán)境中輸入命令徐勃,此時(shí)輸入 kill-session -t session1 回車即可事示。其中session1是要銷毀的會話名。tmux rename -t old_session_name new_session_name 重命名會話
ctrl + b $ 重命名會話 (在會話環(huán)境中)
tmux窗口部分:
- 一個tmux的會話中可以有多個窗口(window)僻肖,每個窗口又可以分割成多個pane(窗格)肖爵。我們工作的最小單位其實(shí)是窗格。默認(rèn)情況下在一個window中臀脏,只有一個大窗格劝堪,占滿整個窗口區(qū)域。我們在這個區(qū)域工作揉稚。
新創(chuàng)建的會話中會默認(rèn)創(chuàng)建一個窗口秒啦,該窗口名字一般是登陸終端的用戶名@主機(jī)名,我們可以通過 crtl+b , (組合鍵之后按一個逗號)來修改當(dāng)前窗口的名字搀玖,如上圖所示的窗口名字myserver1就是修改之后的名字余境。該名字后面有一個*號,表示該窗口是活動窗口(鍵盤輸入會輸入到該窗口中)
-
ctrl+b c 創(chuàng)建之后會多出一個窗口如下圖所示:
切換window
在同一個會話的多個窗口之間可以通過如下快捷鍵進(jìn)行切換:
ctrl+b p (previous的首字母) 切換到上一個window巷怜。
ctrl+b n (next的首字母) 切換到下一個window葛超。
ctrl+b 0 切換到0號window,依次類推延塑,可換成任意窗口序號
ctrl+b w (windows的首字母) 列出當(dāng)前session所有window绣张,通過上、下鍵切換窗口
ctrl+b l (字母L的小寫)相鄰的window切換
- ctrl+b & 關(guān)閉當(dāng)前window
ctrl+b & 關(guān)閉當(dāng)前window关带,會給出提示是否關(guān)閉當(dāng)前窗口侥涵,按下y確認(rèn)即可沼撕。
tmux窗格部分:
tmux的一個窗口可以被分成多個pane(窗格),可以做出分屏的效果芜飘。
ctrl+b % 垂直分屏(組合鍵之后按一個百分號)务豺,用一條垂線把當(dāng)前窗口分成左右兩屏。
ctrl+b " 水平分屏(組合鍵之后按一個雙引號)嗦明,用一條水平線把當(dāng)前窗口分成上下兩屏笼沥。
-
分屏之后光標(biāo)停留在哪個pane上,表示該pane是活動的娶牌,另外一般情況下當(dāng)前pane會被綠色的線條圍起來奔浅。一般分屏之后當(dāng)前窗口名字會重置為默認(rèn)窗口名字。通過多次分屏操作诗良,我們可以得到各種樣子的分屏效果汹桦,例如下圖顯示的是一次垂直分屏之后,在右邊pane中再次水平分屏的效果:
切換pane
ctrl+b o 依次切換當(dāng)前窗口下的各個pane鉴裹。
ctrl+b Up|Down|Left|Right 根據(jù)按箭方向選擇切換到某個pane舞骆。
ctrl+b Space (空格鍵) 對當(dāng)前窗口下的所有pane重新排列布局,每按一次径荔,換一種樣式督禽。
ctrl+b z 最大化當(dāng)前pane。再按一次后恢復(fù)总处。
- 關(guān)閉pane
ctrl+b x 關(guān)閉當(dāng)前使用中的pane赂蠢,操作之后會給出是否關(guān)閉的提示,按y確認(rèn)即關(guān)閉辨泳。
或者 直接輸入: exit - ctrl +b z 最大化當(dāng)前pane
如果想, 恢復(fù)再按一次
tmux window中的歷史輸出查看
- 在tmux里面玖院,因?yàn)槊總€窗口(tmux window)的歷史內(nèi)容已經(jīng)被tmux接管了菠红,當(dāng)我們在每個tmux的window之間進(jìn)行來回切換,來回操作宁脊,那么我們沒有辦法看到一個window里面屏幕上的歷史輸出吃靠。沒辦法使用鼠標(biāo)滾動(例如在SecureCRT中)查看之前的內(nèi)容喻鳄,
- 改用C-b [ 進(jìn)入copy mode,然后就可以用PgUp/PgDn/光標(biāo)來瀏覽歷史輸出了遇绞,按q退出。C-b PgUp 也可以直接進(jìn)入coy mode.