您是否曾經(jīng)遇到過在遠程計算機上執(zhí)行長時間運行的任務(wù),突然連接中斷,SSH會話終止以及工作丟失的情況。
在本教程中,我們將說明如何安裝screen命令并說明如何使用screen命令,如何使用screen運行后臺命令,進程與任務(wù)。
screen或GNU screen是終端多路復(fù)用器。 換句話說,這意味著您可以啟動screen會話,然后在該會話中打開任意數(shù)量的窗口,也就是虛擬終端。
即使它們的窗口不可見,在Screen中運行的進程也將繼續(xù)運行。
如今,大多數(shù)Linux發(fā)行版中都已預(yù)先安裝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í)行常駐后臺任務(wù)。
如果需要退出當前screen會話時,請鍵入Ctrl+a
d
退出screen。 你執(zhí)行任務(wù)將會一直運行。
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
關(guān)閉當前區(qū)域以外的所有窗口,Ctrl+a
X
關(guān)閉當前窗口。
您可以隨時輸入鍵入Ctrl+a d
退出screen會話,從會話斷開后,在screen會話中運行的程序?qū)⒗^續(xù)運行。
恢復(fù)screen會話
要恢復(fù)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設(shè)置。 以下是帶有自定義狀態(tài)行和一些其他選項的示例配置。
# 關(guān)閉歡迎消息
startup_message off
# 關(guān)閉聲音提示
vbell off
# 設(shè)置滾動的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)建多個窗口,在窗口之間導(dǎo)航。
退出和恢復(fù)screen會話,并使用?/.screenrc
文件個性化您的screen終端。
-
Linux
+關(guān)注
關(guān)注
87文章
11479瀏覽量
213023 -
計算機
+關(guān)注
關(guān)注
19文章
7638瀏覽量
90345 -
命令
+關(guān)注
關(guān)注
5文章
733瀏覽量
22740 -
SSH
+關(guān)注
關(guān)注
0文章
194瀏覽量
16833 -
Screen
+關(guān)注
關(guān)注
0文章
12瀏覽量
6901
發(fā)布評論請先 登錄
Linux命令:screen
linux運維命令大全
如何在Model::tick() 中從A_Screen切換到B_Screen?
Linux的screen命令應(yīng)該如何使用技巧詳細說明
Linux的screen命令如何使用技巧詳細說明
AD7843:Touch Screen Digitizer數(shù)據(jù)Sheet

AD7873:Touch Screen Digitizer數(shù)據(jù)Sheet

評論