Centos命令系列 之 screen

2021-09-30 21:56:12 字數 2577 閱讀 4622

作為運維人員經常會遇到等到遠端主機的鏈結因為網路原因或者別的其他不可抗拒的原因斷掉,此時遠端為執行完成的命令也會斷掉而導致很多任務需要重新執行。

這給大家介紹乙個在這種情況下很好用的命令screen,具體好用在那裡,下面具體介紹,包括從其安裝到配置到使用

在正式介紹之前,先給大家介紹下screen都能做什麼事情

centos下命令安裝一般都採用兩種方式,yum和rpm包的方式。這裡分別介紹

yum install -y screen
wget 

rpm -ivh screen-4.1.0-0.19.20120314git3c2946.el7.x86_64.rpm

root@pts/1 $ which screen

/usr/bin/screen

root@pts/1 $ screen -v

screen version 4.01.00devel (gnu) 2-may-06

在開始使用screen之前,執行下面的命令

root@pts/1 $ ps -ef|grep screen

root 6297 2410 0 14:02 pts/1 00:00:00 grep --color=auto screen

然後輸入screen回車,感覺開啟了乙個新的shell session

這個時候我們在執行上面的ps命令和screen -list檢視結果

root 6335

2410

014:02 pts/1

00:00:00 screen

root 6476

6337

014:02 pts/2

00:00:00 grep --color=auto screen

root@pts/2 $ screen -list

there is a screen on

: 6336.pts-1.192 (attached)

1 socket in /var/run/screen/s-root.

screen -list是檢視開啟的screen列表

為了驗證新增screen和後面的功能,在上面的開啟的第乙個screen session中執行top命令

從當前的screen session開啟乙個新的screen session可以使用快捷鍵ctrl+a+c

看到開啟了乙個新的 screen session,乙個沒有執行top的新session

ctrl+a+n 切換到下乙個

ctrl+a+p 切換到上乙個

需要說明的是在切換的時候n多session組成乙個類似環狀,ctrl+a+n切換到最後乙個之後在切換久切換到了第乙個,

同理ctrl+a+p切換到第乙個之後在切換久切換到了最後乙個screen session

注意括號中的狀態值,由attached變成detached

[detached from 6336.pts-1.192]

root@pts/1 $ screen -list

there is a screen on:

6336.pts-1.192 (detached)

1 socket in /var/run/screen/s-root.

當系統只有乙個screen處於 detached狀態的話,直接輸入ctrl+r回車就可以進入screen

如果有多個

there are screens on

: 9944.lc (detached)

9766.pts-1.192 (detached)

6336.pts-1.192 (detached)

3 sockets in /var/run/screen/s-root.

就需要執行ctrl+r+9766.pts-1.192

這裡其實輸入前面的數字或者後面的字串都行,比如

ctrl+r+6336

ctrl+r+pts-1.192

pts-1.192是由系統生成的,對應使用者而言沒有明確的意義。我們可以通過screen -s lc命令去自定義這個值,結果如上面的9944.lc

screen used by root on 192.

password:

使用的時候輸入密碼即可

當你跑完指令碼或者執行完任務的時候,一般建議停止screen,也就是真正的退出screen

putty斷線後讓命令繼續執行之screen

一 screen命令是什麼?screen是乙個可以在多個程序之間多路復用乙個物理終端的全屏視窗管理器。screen中有會話的概念,使用者可以在乙個screen會話中建立多個screen視窗,在每乙個screen視窗中就像操作乙個真實的telnet ssh連線視窗那樣。二 如何安裝screen命令?除...

CentOs之鏈結命令

ln s 原始檔 目標檔案 1,擁有相同的i節點和儲存block塊,可以看作是同乙個檔案 2,可通過i節點識別 3,不能跨分割槽 4,不能針對目錄使用 我們把 root下的anaconda ks.cfg建立乙個硬鏈結到 tmp下 root localhost ls anaconda ks.cfg 牛...

Linux命令系列之htpasswd

htpasswd命令是apache的web伺服器內建工具,用於建立和更新儲存使用者名稱 域和使用者基本認證的密碼檔案。c 建立乙個加密檔案 n 不更新加密檔案,只將加密後的使用者名稱密碼顯示在螢幕上 m 預設採用md5演算法對密碼進行加密 d 採用crypt演算法對密碼進行加密 p 不對密碼進行進行...