有時候我們需要執行一個命令或腳本,需要幾小時甚至幾天,在這個過程中,如果中途斷網或者出現有其他意外情況怎么辦,當然也可以把命令或者腳本放到后臺運行,不過不保險,無法在屏幕上隨時查看,這就要用到虛擬終端screen。
簡單來說,screen是一個可以在多個進程之間多路復用一個物理終端的窗口管理器。screen中有會話的概念,用戶可以在一個screen會話中創建多個screen窗口,在每一個screen窗口中就像操作一個真實的SSH連接窗口一樣。
1.單個screen建立和退出
如果你系統里沒有screen命令,需要先安裝screen包
#yuminstall-yscreen
然后直接執行screen命令,則會進入到一個screen里。
screen
screen -ls可以查看已打開的screen會話
# screen -ls There is a screen on: 6183.pts-0.aminglinux01 (Attached) 1 Socket in /var/run/screen/S-root.
ctrl+a,再按d,退出當前screen。退出后,如果想再次登入某個screen會話,可以使用的是screen -r [編號]
# screen -r 6202
輸入exit,可以直接退出screen會話,再次查看screen列表時,提示沒有screen發現。
# screen -ls No Sockets found in /var/run/screen/S-root.
2.多個screen會話
首選依次創建4個screen,若想進入到其中一個,指定id即可
# screen [detached from 6275.pts-0.aminglinux01] # screen [detached from 6290.pts-0.aminglinux01] # screen [detached from 6305.pts-0.aminglinux01] # screen [detached from 6320.pts-0.aminglinux01]
此時查看screen列表,會有多個screen
# screen -ls There are screens on: 6320.pts-0.aminglinux01 (Detached) 6305.pts-0.aminglinux01(Detached) 6290.pts-0.aminglinux01(Detached) 6275.pts-0.aminglinux01(Detached) 4 Sockets in /var/run/screen/S-root.
3.使用-S選項來定義screen名字
# screen -S "test_screen"
此時進入screen,執行sleep命令
# sleep 300
Ctrl + a ,再按d ,回到當前頁面。我們再列出所有的screen
# screen -ls There are screens on: 6361.test_screen (Detached) 6320.pts-0.aminglinux01(Detached) 6305.pts-0.aminglinux01(Detached) 6290.pts-0.aminglinux01(Detached) 6275.pts-0.aminglinux01(Detached) 5 Sockets in /var/run/screen/S-root.
其中6361就是剛剛定義的test_screen。
審核編輯:湯梓紅
-
Linux
+關注
關注
87文章
11345瀏覽量
210394 -
命令
+關注
關注
5文章
696瀏覽量
22109 -
Screen
+關注
關注
0文章
12瀏覽量
6776 -
腳本
+關注
關注
1文章
391瀏覽量
14938
原文標題:虛擬終端screen
文章出處:【微信號:aming_linux,微信公眾號:阿銘linux】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論