詳解Linux Screen讓程序保持後臺運行

詳解Linux Screen讓程序保持後臺運行

 

 

您是否曾經遇到過在遠程計算機上執行長時間運行的任務,突然連接中斷,SSH會話終止以及工作丟失的情況。 好吧,這在某個時候發生在我們所有人身上,不是嗎? 幸運的是,有一個名爲screen的實用程序,可讓我們恢復會話。

screen是終端多路複用器,它允許用戶訪問單個終端窗口內的多個單獨的終端會話或遠程終端會話(例如使用SSH時)

介紹

Screen 或GNU Screen 是終端多路複用器。 換句話說,這意味着您可以啓動屏幕會話,然後在該會話中打開任意數量的窗口(虛擬終端)。 當您的屏幕窗口不可見時,即使您已斷開連接,在Screen中運行的進程也將繼續運行。

安裝Linux GNU Screen

如今,大多數Linux發行版中都已預先安裝了Screen 軟件包。您可以通過鍵入以下命令檢查它是否已安裝在系統上:


 
screen --version

 

如果您的系統尚未安裝Screen ,則可以使用發行版的軟件包管理器輕鬆安裝它:

在Ubuntu和Debian上安裝Linux Screen


 
sudo apt install screen

在CentOS和Fedora上安裝Linux Screen


 
sudo yum install screen

 

啓動Linux Screen

要啓動screen會話,只需在控制檯中鍵入screen:


 
screen

 

這將打開一個screen會話,創建一個新窗口,並在該窗口中啓動一個shell。 現在,您已經打開了一個屏幕會話,您可以通過鍵入以下內容來獲取命令列表:


 
Ctrl+a ? 或 screen -list

 

 

開始命名會話

當您運行多個screen會話時,命名會話很有用。要創建命名會話,請使用以下參數運行screen命令:


 
screen -S session_name

選擇一個描述性的會話名稱總是一個好主意。

 

開始使用Linux Screen

當您開始一個新的screen會話時,它將創建一個帶有shell的單個窗口。

在screen會話中你可以有多個窗口。

要創建一個使用shell類型的新窗口可以使用,它將從0 ... 9範圍開始的第一個可用數字分配給它:


 
Ctrl + a c

以下是用於管理Linux Screen Windows的一些最常用命令:

  • Ctrl + a c:創建一個新窗口(帶shell)
  • Ctrl + a “:列出所有窗口
  • Ctrl + a 0:切換到窗口0(按數字)
  • Ctrl + a:重命名當前窗口
  • Ctrl + a S:將當前區域水平分爲兩個區域
  • Ctrl + a | :將當前區域垂直分爲兩個區域
  • Ctrl + a:選項卡將輸入焦點切換到下一個區域
  • Ctrl + a Ctrl + a:在當前區域和上一個區域之間切換
  • Ctrl + a Q:關閉除當前區域外的所有區域
  • Ctrl + a X:關閉當前區域

從Linux Screen 回話中脫離

您可以隨時輸入以下內容從Screen 會話中分離:


 
Ctrl+a d

從Screen 會話中分離後,在Screen 會話中運行的程序將繼續運行。

重新連接到Linux Screen

要恢復Screen會話,請使用以下命令:


 
screen -r

如果您的計算機上正在運行多個Screen會話,則需要在r參數後附加屏幕會話ID。

要查找會話ID,請使用以下命令列出當前正在運行的Screen會話:


 
screen -ls

如果要還原屏幕16364.pts-0,請鍵入以下命令:


 
screen -r 16364

 

刪除當前screen回話

進入當前回話,並輸入:


 
exit

自定義Linux屏幕

Screen啓動時,如果存在文件,它將從/ etc / screenrc和〜/ .screenrc中讀取其配置參數。我們可以使用.screenrc文件根據喜好修改默認的Screen設置。

這是〜/ .screenrc配置示例,帶有自定義狀態行和一些其他選項:


 
# Turn off the welcome message startup_message off # Disable visual bell vbell off # Set scrollback buffer to 10000 defscrollback 10000 # Customize the status line hardstatus alwayslastline hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %m-%d %{W}%c %{g}]' 

基本的Linux屏幕用法

以下是開始使用屏幕的最基本步驟:

  1. 在命令提示符下,鍵入screen。
  2. 運行所需的程序。
  3. 使用按鍵順序Ctrl-a + Ctrl-d從screen會話中分離。
  4. 通過輸入screen -r重新連接到screen會話。

結論

在本教程中,您學習瞭如何使用Gnu Screen。 現在,您可以開始使用屏幕實用程序,並通過單個會話創建多個屏幕窗口,在窗口之間導航,分離和恢復屏幕會話,並使用.screenrc文件個性化您的屏幕終端

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章