screen 命令是一個終端多路復用器。它類似於桌面環境中的窗口管理器,不同之處在於它在終端中工作。您可以創建會話並拆分窗口。這是在終端中進行多任務處理的一種非常強大的方式。
屏幕安裝命令
您可以使用您的發行版的默認包管理器安裝 screen 命令。要在大多數用戶使用的兩個主要發行版上安裝 screen 命令:
1. 在基於 Debian / Ubuntu 的系統上安裝
可以使用 apt 命令安裝 screen 命令。
sudo apt install screen
2. 安裝在基於 RedHat / Fedora 的系統上
默認存儲庫中不存在屏幕包。相反,它位於 EPEL(企業 Linux 的附加軟件包)存儲庫中。
首先,您需要添加該存儲庫。這可以通過 dnf 命令來完成。
sudo dnf install epel-release
然後,要安裝屏幕,請鍵入:
sudo dnf install screen

屏幕命令的基本用法
在開始使用 screen 命令之前,了解一些與它相關的術語會很有幫助。存在 screen
1 會議 虛擬終端集合 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
+ +|
(管道/管道字符)

窗口編號及其名稱顯示在窗格的左下角。 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”)。轉到原始提示。

然後列出屏幕會話。

要重新連接到會話,請鍵入:
screen -r -S newsession
設置窗格時,窗格消失,您需要根據需要重新拆分終端。窗戶還在。
請注意,我們使用會話的名稱而不是 PID。
屏幕作為協作工具
令人驚訝的是,Screen 可以用作協作工具。我將解釋如何與公眾聯繫 screen
來自兩台遠程計算機的會話。
假設您想向某人展示如何編輯服務器上的配置文件。創造 screen
服務器上的會話:
screen -S newsession
然後進入命令模式(CTRL
+ + A
+ + :
)進入 multiuser on
按 Enter
讓其他人以創建屏幕會話的同一用戶身份登錄 從各種機器 輸入如下。
screen -x

右側的終端適用於任何想要展示如何編輯配置文件的人。左邊的終端只是反映了右邊終端上寫的內容。這樣,一個人就可以打開 vim 或 nano 並向其他人展示如何編輯文件。
結論是
Screen 對於多任務處理來說是一個非常有用的命令,因為您可以在終端中運行多個交互式 shell。有關屏幕上的詳細信息,請查看手冊。