本篇文章為大家展示了Tmux中怎么實(shí)現(xiàn)多會(huì)話終端管理,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。
專注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)長(zhǎng)樂(lè)免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
Tmux 可以在絕大多數(shù)的 Linux 官方倉(cāng)庫(kù)下獲取。
在 Arch Linux 或它的變種系統(tǒng)下,執(zhí)行下列命令來(lái)安裝:
$ sudo pacman -S tmux
Debian、Ubuntu 或 Linux Mint:
$ sudo apt-get install tmux
Fedora:
$ sudo dnf install tmux
RHEL 和 CentOS:
$ sudo yum install tmux
SUSE/openSUSE:
$ sudo zypper install tmux
以上,我們已經(jīng)完成 Tmux 的安裝。之后我們繼續(xù)看看一些 Tmux 示例。
Tmux 默認(rèn)所有命令的前置命令都是 Ctrl+b
,使用前牢記這個(gè)快捷鍵即可。
注意:Screen 的前置命令都是
Ctrl+a
.
在終端中運(yùn)行如下命令創(chuàng)建 Tmux 會(huì)話并附著進(jìn)入:
tmux
抑或,
tmux new
一旦進(jìn)入 Tmux 會(huì)話,你將看到一個(gè) 沉在底部的綠色的邊欄,如下圖所示。
創(chuàng)建 Tmux 會(huì)話
這個(gè)綠色的邊欄能很容易提示你當(dāng)前是否身處 Tmux 會(huì)話當(dāng)中。
退出當(dāng)前 Tmux 會(huì)話僅需要使用 Ctrl+b
和 d
。無(wú)需同時(shí)觸發(fā)這兩個(gè)快捷鍵,依次按下 Ctrl+b
和 d
即可。
退出當(dāng)前會(huì)話后,你將能看到如下輸出:
[detached (from session 0)]
如果使用多個(gè)會(huì)話,你很可能會(huì)混淆運(yùn)行在多個(gè)會(huì)話中的應(yīng)用程序。這種情況下,我們需要會(huì)話并賦予名稱。譬如需要 web 相關(guān)服務(wù)的會(huì)話,就創(chuàng)建一個(gè)名稱為 “webserver”(或任意一個(gè)其他名稱) 的 Tmux 會(huì)話。
tmux new -s webserver
這里是新的 Tmux 有名會(huì)話:
擁有自定義名稱的 Tmux 會(huì)話
如你所見(jiàn)上述截圖,這個(gè) Tmux 會(huì)話的名稱已經(jīng)被標(biāo)注為 “webserver”。如此,你可以在多個(gè)會(huì)話中,輕易的區(qū)分應(yīng)用程序的所在。
退出會(huì)話,輕按 Ctrl+b
和 d
。
查看 Tmux 會(huì)話清單,執(zhí)行:
tmux ls
示例輸出:
列出 Tmux 會(huì)話
如你所見(jiàn),我們開(kāi)啟了兩個(gè) Tmux 會(huì)話。
有時(shí)候,你可能想要簡(jiǎn)單創(chuàng)建會(huì)話,但是并不想自動(dòng)切入該會(huì)話。
創(chuàng)建一個(gè)非附著會(huì)話,并賦予名稱 “ostechnix”,運(yùn)行:
tmux new -s ostechnix -d
上述命令將會(huì)創(chuàng)建一個(gè)名為 “ostechnix” 的會(huì)話,但是并不會(huì)附著進(jìn)入。
你可以通過(guò)使用 tmux ls
命令驗(yàn)證:
創(chuàng)建非附著會(huì)話
通過(guò)如下命令,你可以附著進(jìn)入最后一個(gè)被創(chuàng)建的會(huì)話:
tmux attach
抑或,
tmux a
如果你想附著進(jìn)入任意一個(gè)指定的有名會(huì)話,譬如 “ostechnix”,運(yùn)行:
tmux attach -t ostechnix
或者,簡(jiǎn)寫(xiě)為:
tmux a -t ostechnix
當(dāng)你完成或者不再需要 Tmux 會(huì)話,你可以通過(guò)如下命令關(guān)閉:
tmux kill-session -t ostechnix
當(dāng)身處該會(huì)話時(shí),使用 Ctrl+b
以及 x
。點(diǎn)擊 y
來(lái)關(guān)閉會(huì)話。
可以通過(guò) tmux ls
命令驗(yàn)證。
關(guān)閉所有 Tmux 服務(wù)下的所有會(huì)話,運(yùn)行:
tmux kill-server
謹(jǐn)慎!這將終止所有 Tmux 會(huì)話,并不會(huì)產(chǎn)生任何警告,即便會(huì)話存在運(yùn)行中的任務(wù)。
如果不存在活躍的 Tmux 會(huì)話,將看到如下輸出:
$ tmux lsno server running on /tmp/tmux-1000/default
切割窗口成多個(gè)小窗口,在 Tmux 中,這個(gè)叫做 “Tmux 窗格”。每個(gè)窗格中可以同時(shí)運(yùn)行不同的程序,并同時(shí)與所有的窗格進(jìn)行交互。每個(gè)窗格可以在不影響其他窗格的前提下可以調(diào)整大小、移動(dòng)位置和控制關(guān)閉。我們可以以水平、垂直或者二者混合的方式切割屏幕。
欲水平切割窗格,使用 Ctrl+b
和 "
(半個(gè)雙引號(hào))。
水平切割 Tmux 窗格
可以使用組合鍵進(jìn)一步切割面板。
垂直切割面板,使用 Ctrl+b
和 %
。
垂直切割 Tmux 窗格
我們也可以同時(shí)采用水平和垂直的方案切割窗格??纯慈缦陆貓D:
切割 Tmux 窗格
首先,我通過(guò) Ctrl+b
"
水平切割,之后通過(guò) Ctrl+b
%
垂直切割下方的窗格。
如你所見(jiàn),每個(gè)窗格下我運(yùn)行了不同的程序。
通過(guò) Ctrl+b
和方向鍵(上下左右)切換窗格。
之前的案例中,我們?cè)诿總€(gè)窗格中運(yùn)行了三個(gè)不同命令。其實(shí),也可以發(fā)送相同的命令給所有窗格。
為此,使用 Ctrl+b
然后鍵入如下命令,之后按下回車:
:setw synchronize-panes
現(xiàn)在在任意窗格中鍵入任何命令。你將看到相同命令影響了所有窗格。
使用 Ctrl+b
和 o
交換窗格。
使用 Ctrl+b
和 q
展示窗格號(hào)。
要關(guān)閉窗格,直接鍵入 exit
并且按下回車鍵。或者,按下 Ctrl+b
和 x
。你會(huì)看到確認(rèn)信息。按下 y
關(guān)閉窗格。
關(guān)閉窗格
我們可以將 Tmux 窗格放大到當(dāng)前終端窗口的全尺寸,以獲得更好的文本可視性,并查看更多的內(nèi)容。當(dāng)你需要更多的空間或?qū)W⒂谀硞€(gè)特定的任務(wù)時(shí),這很有用。在完成該任務(wù)后,你可以將 Tmux 窗格縮小(取消放大)到其正常位置。更多詳情請(qǐng)看以下鏈接。
如何縮放 Tmux 窗格以提高文本可見(jiàn)度?
當(dāng)通過(guò) SSH 與遠(yuǎn)程系統(tǒng)工作時(shí),在 Tmux 會(huì)話中運(yùn)行一個(gè)長(zhǎng)期運(yùn)行的進(jìn)程總是一個(gè)好的做法。因?yàn)椋梢苑乐鼓阍诰W(wǎng)絡(luò)連接突然中斷時(shí)失去對(duì)運(yùn)行進(jìn)程的控制。避免這個(gè)問(wèn)題的一個(gè)方法是自動(dòng)啟動(dòng) Tmux 會(huì)話。更多詳情,請(qǐng)參考以下鏈接。
通過(guò) SSH 登錄遠(yuǎn)程系統(tǒng)時(shí)自動(dòng)啟動(dòng) Tmux 會(huì)話
這個(gè)階段下,你已經(jīng)獲得了基本的 Tmux 技能來(lái)進(jìn)行多會(huì)話管理,更多細(xì)節(jié),參閱 man 頁(yè)面。
$ man tmux
上述內(nèi)容就是Tmux中怎么實(shí)現(xiàn)多會(huì)話終端管理,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。