【tmux】終端複用工具之tmux

最簡易操作流程

1、新建會話tmux new -s my_session
2、在 Tmux 窗口運行所需的程序。
3、按下快捷鍵Ctrl+b d將會話分離。
4、下次使用時,重新連接到會話tmux attach-session -t my_session

一、Tmux是什麼?

SSH遠程控制服務器的時候,當關閉會話窗口(session)時遠程進程會自動終止,有時候這就很令人討厭,比如正在遠程服務器上處理大型數據時突然斷網或辣雞win10自動更新了,這時服務器當前session上運行的進程會隨之消失,不會保留任何結果,這很讓人煩惱,如果能將本地窗口與遠程會話解綁,當本地窗口關閉時遠程會話並不會終止,這就起到了保護遠程會話的作用。Tmux就是用來解決這樣的問題的,

Tmux是將會話與窗口“解綁”的工具,將本地窗口與遠程session徹底分離。

Tmux的功能
(1)它允許在單個窗口中,同時訪問多個會話。這對於同時運行多個命令行程序很有用。
(2)它可以讓新窗口"接入"已經存在的會話。
(3)它允許每個會話有多個連接窗口,因此可以多人實時共享會話。
(4)它還支持窗口任意的垂直和水平拆分。

二、使用方法

1、安裝(ubantu)

sudo apt-get install tmux

2、使用

新建會話
如果需要在新建會話裏面使用anaconda環境的話,需要首先重置一下conda環境,否則啓動會話後雖然激活了conda的環境,但是import包的時候會顯示沒有該包。在使用Tmux之前輸入以下命令即可:

conda init

新建一個指定名稱的會話:

tmux new -s <session-name>

也可直接輸入tmux啓動一個會話,默認是編號0,往後依此類推。

分離會話
即暫時離開tmux會話回到本地窗口。快捷鍵Ctrl+b d或輸入以下命令,就會回到本地窗口

tmux detach

上面命令執行後,就會退出當前 Tmux 窗口,但是會話和裏面的進程仍然在後臺運行。

查看當前所有的Tmux會話
在本地窗口輸入tmux ls命令可以查看當前所有Tmux會話。
在這裏插入圖片描述
接入會話
即從當前窗口進入後臺的Tmux會話,

tmux attach -t <sessiong-name>

殺死會話

tmux kill-session -t <session-name>

切換會話

tmux switch -t <session-name>

重命名會話
快捷鍵:Ctrl+b $,或輸入命令:

tmux rename-session -t <old-name> <new-name>

窗格操作
快捷鍵:
Ctrl+b %:劃分左右兩個窗格。
Ctrl+b ":劃分上下兩個窗格。
Ctrl+b <arrow key>:光標切換到其他窗格。<arrow key>是指向要切換到的窗格的方向鍵,比如切換到下方窗格,就按方向鍵↓。
Ctrl+b ;:光標切換到上一個窗格。
Ctrl+b o:光標切換到下一個窗格。
Ctrl+b {:當前窗格左移。
Ctrl+b }:當前窗格右移。
Ctrl+b Ctrl+o:當前窗格上移。
Ctrl+b Alt+o:當前窗格下移。
Ctrl+b x:關閉當前窗格。
Ctrl+b !:將當前窗格拆分爲一個獨立窗口。
Ctrl+b z:當前窗格全屏顯示,再使用一次會變回原來大小。
Ctrl+b Ctrl+<arrow key>:按箭頭方向調整窗格大小。
Ctrl+b q:顯示窗格編號。

在tmux會話上的窗口操作
新建窗口:tmux new-window -n <window-name>
切換窗口:tmux select-window -t <window-number>
重命名窗口:tmux rename-window <new-name>
快捷鍵:
Ctrl+b c:創建一個新窗口,狀態欄會顯示多個窗口的信息。
Ctrl+b p:切換到上一個窗口(按照狀態欄上的順序)。
Ctrl+b n:切換到下一個窗口。
Ctrl+b <number>:切換到指定編號的窗口,其中的是狀態欄上的窗口編號。
Ctrl+b w:從列表中選擇窗口。
Ctrl+b ,:窗口重命名。

其他命令:

# 列出所有快捷鍵,及其對應的 Tmux 命令
$ tmux list-keys

# 列出所有 Tmux 命令及其參數
$ tmux list-commands

# 列出當前所有 Tmux 會話的信息
$ tmux info

# 重新加載當前的 Tmux 配置
$ tmux source-file ~/.tmux.conf
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章