手机看片精品高清国产日韩,色先锋资源综合网,国产哺乳奶水91在线播放,乱伦小说亚洲色图欧洲电影

Tmux 簡單介紹和使用

2024-12-20 16:06:59 3929

Tmux 簡單介紹和使用

Tmux 是一個終端復用器(terminal multiplexer),非常有用,屬于常用的開發工具。

會話與進程

命令行的典型使用方式是,打開一個終端窗口(terminal window,以下簡稱"窗口"),在里面輸入命令。用戶與計算機的這種臨時的交互,稱為一次"會話"(session)

會話的一個重要特點是,窗口與其中啟動的進程是連在一起的。打開窗口,會話開始;關閉窗口,會話結束,會話內部的進程也會隨之終止,不管有沒有運行完。

一個典型的例子就是,SSH 登錄遠程計算機,打開一個遠程窗口執行命令。這時,網絡突然斷線,再次登錄的時候,是找不回上一次執行的命令的。因為上一次 SSH 會話已經終止了,里面的進程也隨之消失了。

為了解決這個問題,會話與窗口可以"解綁":窗口關閉時,會話并不終止,而是繼續運行,等到以后需要的時候,再讓會話"綁定"其他窗口

Tmux 的作用

Tmux 就是會話與窗口的"解綁"工具,將它們徹底分離。

(1)它允許在單個窗口中,同時訪問多個會話。這對于同時運行多個命令行程序很有用。

(2) 它可以讓新窗口"接入"已經存在的會話。

(3)它允許每個會話有多個連接窗口,因此可以多人實時共享會話。

(4)它還支持窗口任意的垂直和水平拆分。

類似的終端復用器還有 GNU Screen。Tmux 與它功能相似,但是更易用,也更強大。

基本用法

安裝

# Ubuntu 或 Debian
$ sudo apt-get install tmux

# CentOS 或 Fedora
$ sudo yum install tmux

# Mac
$ brew install tmux

啟動與退出

安裝完成后,鍵入tmux命令,就進入了 Tmux 窗口。

上面命令會啟動 Tmux 窗口,底部有一個狀態欄。狀態欄的左側是窗口信息(編號和名稱),右側是系統信息。

image-20241219113159570image.png

按下Ctrl+d或者顯式輸入exit命令,就可以退出 Tmux 窗口。

前綴鍵

Tmux 窗口有大量的快捷鍵。所有快捷鍵都要通過前綴鍵喚起。默認的前綴鍵是Ctrl+b,即先按下Ctrl+b,快捷鍵才會生效。

舉例來說,幫助命令的快捷鍵是Ctrl+b ?。它的用法是,在 Tmux 窗口中,先按下Ctrl+b,再按下?,就會顯示幫助信息。

然后,按下 ESC 鍵或q鍵,就可以退出幫助。

會話管理

新建會話

第一個啟動的 Tmux 窗口,編號是0,第二個窗口的編號是1,以此類推。這些窗口對應的會話,就是 0 號會話、1 號會話。

使用編號區分會話,不太直觀,更好的方法是為會話起名。

$ tmux new -s <session-name>

上面命令新建一個指定名稱的會話。

分離會話

在 Tmux 窗口中,按下Ctrl+b d或者輸入tmux detach命令,就會將當前會話與窗口分離。

$ tmux detach

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

tmux ls命令可以查看當前所有的 Tmux 會話。

$ tmux ls
# or
$ tmux list-session

接入會話

tmux attach命令用于重新接入某個已存在的會話。

# 使用會話編號
$ tmux attach -t 0

# 使用會話名稱
$ tmux attach -t <session-name>

殺死會話

tmux kill-session命令用于殺死某個會話。

# 使用會話編號
$ tmux kill-session -t 0

# 使用會話名稱
$ tmux kill-session -t <session-name>

切換會話

tmux switch命令用于切換會話。

# 使用會話編號
$ tmux switch -t 0

# 使用會話名稱
$ tmux switch -t <session-name>

重命名會話

tmux rename-session命令用于重命名會話。

$ tmux rename-session -t 0 <new-name>

上面命令將0號會話重命名。

最簡操作流程

綜上所述,以下是 Tmux 的最簡操作流程。

  1. 新建會話tmux new -s my_session

  2. 在 Tmux 窗口運行所需的程序。

  3. 按下快捷鍵Ctrl+b d將會話分離。

  4. 下次使用時,重新連接到會話tmux attach-session -t my_session


提交成功!非常感謝您的反饋,我們會繼續努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務,我們很需要您進一步的反饋信息:

在文檔使用中是否遇到以下問題: