screen 命令是一個終端多路復用器。它類似於桌面環境中的窗口管理器,不同之處在於它在終端中工作。您可以創建會話並拆分窗口。這是在終端中進行多任務處理的一種非常強大的方式。

屏幕安裝命令

您可以使用您的發行版的默認包管理器安裝 screen 命令。要在大多數用戶使用的兩個主要發行版上安裝 screen 命令:

1. 在基於 Debian / Ubuntu 的系統上安裝

可以使用 apt 命令安裝 screen 命令。

sudo apt install screen
使用 Apt 安裝屏幕

2. 安裝在基於 RedHat / Fedora 的系統上

默認存儲庫中不存在屏幕包。相反,它位於 EPEL(企業 Linux 的附加軟件包)存儲庫中。

首先,您需要添加該存儲庫。這可以通過 dnf 命令來完成。

sudo dnf install epel-release
添加 EPEL 存儲庫

然後,要安裝屏幕,請鍵入:

sudo dnf install screen
首次安裝使用 dnf 安裝 Screen

屏幕命令的基本用法

在開始使用 screen 命令之前,了解一些與它相關的術語會很有幫助。存在 screen1 會議 虛擬終端集合 screen 管理。

會話可能包含多個 視窗 這些通常是獨立的交互式 shell。虛擬終端可以拆分如下 疼痛 這些是終端內的矩形區域,定義為: screen..這些窗格可以包含窗口。

1.使用沒有參數的屏幕

要使用屏幕,請鍵入:

screen

啟動“未命名”會話。我不知道與原始提示的區別,但屏幕正在偵聽命令。突然 CTRL + + A + + ? 記住鍵綁定 screen

屏幕鍵綁定屏幕鍵綁定

如上圖 CTRL + + A (有時寫成 ^ 一個 ) 是“命令鍵” screen..按命令鍵通知 screen 要按下的鍵是命令 screen..

(在“A” CTRL + + A 不是大寫。無需按 Shift 鑰匙。 ‘A’ 表示小寫的’a’。這是因為手冊頁和鍵綁定以這種方式引用它。對於其他鍵,我們將明確提及這種情況。 )。

還有一個命令模式,如 vim,您可以通過按 CTRL + + A + +

不同之處在於您必須在命令模式下輸入整個命令,而不是鍵盤快捷鍵。例如, CTRL + + A + + X 相當於按(大寫“x”) CTRL + + A + + 然後輸入 remove 在窗格底部出現的提示處。

畫面指令模式畫面指令模式

2.創建命名會話

要創建命名會話,請在 -S 選項之後指定會話名稱。

screen -S newsession

3.在會話中新建一個窗口

按在您的會話中創建一個新窗口 CTRL + + A + + C (小寫’c’)。突然 CTRL + + A + + “” (雙引號)表示可選擇窗口的列表。您可以通過按打開窗口 Enter 列表中該窗口的選項。

窗口列表窗口列表

按下可重命名當前窗口 CTRL + + A + + A (大寫“a”)。底部會顯示一個提示。在此處輸入一個新名稱,然後按 Enter..

為窗口命名為窗口命名

4.列出活動會話

可能不止一個 screen 會議將同時舉行。要列出它們,請鍵入:

screen -ls
上市會議上市會議

該列表包含會話 PID(進程 ID),後跟會話名稱。列表下方是套接字的數量

這個命令是 screen 會話(添加在括號中)。您可以在屏幕會話中執行屏幕命令!

5. 結束會話

如何結束會話取決於它是在會話內部還是外部。

在會話之外時 要被殺死,您需要知道會話的名稱或會話的 PID。它們可以從列表中獲得 screen -ls..

知道會話名稱或 PID 後,鍵入:

screen -X -S 607719 quit
屏幕關閉屏幕關閉

上述命令以 PID 607719 結束會話。 [screen is terminating] 您將返回到“開始”屏幕提示。

您還可以指定一個使 PID 唯一的數字。例如,如果您有兩個 PID 為 699389 和 607719 的會話,並且您想結束 PID 為 607719 的會話,您可以使用:

screen -X -S 60 quit

該名稱可能會受到相同的收縮。

quit 是命令 screen 這將終止會話。您可以通過這種方式將任何命令發送到您的會話(請參閱鍵綁定頁面了解所有可用命令)。

會議期間您可以通過按結束當前會話, CTRL + + A + + (反斜杠)。

屏幕作為終端多路復用器

screen 是一個終端多路復用器。也就是說,您可以將終端水平或垂直劃分為多個窗格。這些窗格可以進一步水平或垂直劃分。為此,您需要參加屏幕會議。

一、按 垂直拆分設備 CTRL + + A + +| (管道/管道字符)

垂直分區 2垂直劃分

窗口編號及其名稱顯示在窗格的左下角。 screen 默認情況下,會打開一個編號為 0 的窗口。

您可以通過按在窗格之間切換 CTRL + + A + + Tab ..按下它以顯示右側的窗格。然後您可以使用選項列表(CTRL + + A + +") 或新的 (CTRL + + A + + c)。當您創建一個新窗口時,您的終端如下所示:

多個窗格多個窗格

接下來,讓我們水平拆分窗口 1(垂直拆分後創建的新窗口)。 CTRL + + A + + S (Capital’s’) 移動到新窗格 (CTRL + + A + +Tab), 創建一個新窗口 (CTRL + + A + + c)。

終端看起來像這樣:

水平拆分水平拆分

按下可刪除窗格 CTRL + + A + + X 在該窗格中(大寫的“x”)。

刪除並重新連接

真正的力量 screen 能夠斷開和重新連接會話。當您從會話斷開連接時,系統會提示您從運行它的位置返回 screen..然後整個會話 在後台運行 一個在這裡 screen 進行處理。

這在通過 SSH 訪問機器時特別有用。長時間運行的命令可以在屏幕會話中運行 遠程機器..下一個, screen 會話和安全性從 ssh 會話結束 本地機器..

然後,幾個小時後,您可以再次通過 SSH 連接到機器並重新連接到 screen 會話。您可以看到該命令仍在運行。在正常的 SSH 會話中,此命令將被終止。

按下以斷開會話 CTRL + + A + + d (小寫“d”)。轉到原始提示。

分離後 1分離後

然後列出屏幕會話。

拆機後發帖拆機後發帖

要重新連接到會話,請鍵入:

screen -r -S newsession

設置窗格時,窗格消失,您需要根據需要重新拆分終端。窗戶還在。

請注意,我們使用會話的名稱而不是 PID。

屏幕作為協作工具

令人驚訝的是,Screen 可以用作協作工具。我將解釋如何與公眾聯繫 screen 來自兩台遠程計算機的會話。

假設您想向某人展示如何編輯服務器上的配置文件。創造 screen 服務器上的會話:

screen -S newsession

然後進入命令模式(CTRL + + A + + :)進入 multiuser onEnter

讓其他人以創建屏幕會話的同一用戶身份登錄 從各種機器 輸入如下。

screen -x
通用屏幕會話通用屏幕會話

右側的終端適用於任何想要展示如何編輯配置文件的人。左邊的終端只是反映了右邊終端上寫的內容。這樣,一個人就可以打開 vim 或 nano 並向其他人展示如何編輯文件。

結論是

Screen 對於多任務處理來說是一個非常有用的命令,因為您可以在終端中運行多個交互式 shell。有關屏幕上的詳細信息,請查看手冊。