您是否曾經(jīng)遇到過在遠程計算機上執(zhí)行長時間運行的任務,突然連接中斷,SSH會話終止以及工作丟失的情況。
在本教程中,我們將說明如何安裝screen命令并說明如何使用screen命令,如何使用screen運行后臺命令,進程與任務。
screen或GNU screen是終端多路復用器。 換句話說,這意味著您可以啟動screen會話,然后在該會話中打開任意數(shù)量的窗口,也就是虛擬終端。
即使它們的窗口不可見,在Screen中運行的進程也將繼續(xù)運行。
如今,大多數(shù)Linux發(fā)行版中都已預先安裝screen命令。 可以運行命令screen --version檢查它是否已安裝在你的Linux系統(tǒng)。 命令將會screen的版本信息。
如果您的系統(tǒng)上未安裝screen,則可以使用發(fā)行版的軟件包管理器輕松安裝它。
如果你的計算機運行的是基于Debian的Linux發(fā)行版。 例如Ubuntu和Linux mint,可以運行命令sudo apt install screen安裝screen。
如果你的計算機運行的是基于Redhat的Linux發(fā)行版。 例如CentOS和Fedora,可以運行命令sudo apt install screen安裝screen。
sudo yum install screen #for centos and fedora
sudo apt install screen #for Ubuntu and Debian
screen --version
Screen version 4.06.02 (GNU) 23-Oct-17
啟動 screen
要開始screen會話,只需在終端運行screen 命令即可。 這將打開一個screen會話,創(chuàng)建一個新窗口,并在該窗口中啟動shell。
當您運行多個screen會話時,命名會話非常有用。 要創(chuàng)建命令的會話,請運行命令screen -S session_name。
現(xiàn)在您已經(jīng)打開了一個screen會話,你鍵入Ctrl+a ?來獲取命令列表。
當進入后,請鍵入Ctrl-a c,創(chuàng)建一個shell會話,然后就可以運行命令或者執(zhí)行常駐后臺任務。
如果需要退出當前screen會話時,請鍵入Ctrl+a d 退出screen。 你執(zhí)行任務將會一直運行。
screen
screen -S session_name #命名會話
Ctrl+a ? #獲取幫助
Ctrl+a c #在screen創(chuàng)建shell 會話
Ctrl+a d #退出screen
screen 快捷鍵
當您開始新的screen會話時,它將創(chuàng)建一個帶有shell的窗口。 screen會話中可以有多個窗口。
要創(chuàng)建shell會話類型的窗口鍵入Ctrl+a c,將為其分配范圍0...9中的第一個可用數(shù)字。
以下是一些用于管理screen窗口的最常用命令。 Ctrl+a c創(chuàng)建一個新窗口,包括shell會話。
Ctrl+a "列出所有窗口,Ctrl+a 0切換到窗口0,Ctrl+a A重命名當前窗口
Ctrl+a S將當前窗口水平分為兩個窗口,Ctrl+a |將當前窗口垂直分割為兩個窗口。
Ctrl+a tab將輸入焦點切換到下一個窗口,Ctrl+a Ctrl+a在當前窗口和上一個之間切換。
Ctrl+a Q關閉當前區(qū)域以外的所有窗口,Ctrl+a X關閉當前窗口。
您可以隨時輸入鍵入Ctrl+a d退出screen會話,從會話斷開后,在screen會話中運行的程序?qū)⒗^續(xù)運行。
恢復screen會話
要恢復screen會話,請運行命令screen -r。 如果您的計算機上正在運行多個screen會話,則需要在r選項后附加screen會話id。
要找到會話ID,請運行screen -ls命令列出當前正在運行的screen會話。 例如要還原screen的id是10835.pts的會話,請運行命令screen -r 10835。
screen -ls
screen -r
screen -r 10835
There are screens on:
10835.pts-0.myfreax-desktop (Detached)
10366.pts-0.myfreax-desktop (Detached)
2 Sockets in /run/screens/S-myfreax.
自定義screen
啟動screen時,如果配置文件存在,它將從/etc/screenrc和~/.screenrc中讀取其配置參數(shù)。
我們可以在~/.screenrc文件根據(jù)喜好修改默認的screen設置。 以下是帶有自定義狀態(tài)行和一些其他選項的示例配置。
# 關閉歡迎消息
startup_message off
# 關閉聲音提示
vbell off
# 設置滾動的buffer
defscrollback 10000
# 自定行的狀態(tài)
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}]'
結(jié)論
在本教程中,您學習了如何使用Gnu Screen。 現(xiàn)在,您可以開始使用screen程序,并通過單個會話創(chuàng)建多個窗口,在窗口之間導航。
退出和恢復screen會話,并使用?/.screenrc文件個性化您的screen終端。
-
Linux
+關注
關注
88文章
11631瀏覽量
218067 -
計算機
+關注
關注
19文章
7768瀏覽量
92728 -
命令
+關注
關注
5文章
746瀏覽量
23457 -
SSH
+關注
關注
0文章
198瀏覽量
17583 -
Screen
+關注
關注
0文章
13瀏覽量
7037
發(fā)布評論請先 登錄
Linux命令:screen
linux運維命令大全
如何在Model::tick() 中從A_Screen切換到B_Screen?
Linux的screen命令應該如何使用技巧詳細說明
Linux的screen命令如何使用技巧詳細說明
AD7843:Touch Screen Digitizer數(shù)據(jù)Sheet
AD7873:Touch Screen Digitizer數(shù)據(jù)Sheet

如何安裝和使用screen命令
評論