幫助中心
這里有最新的使用文檔和教程
Centos Screen的安裝與使用
一、screen命令是什么?
Screen是一個可以在多個進程之間多路復用一個物理終端的全屏窗口管理器。Screen中有會話的概念,用戶可以在一個screen會話中創建多個screen窗口,在每一個screen窗口中就像操作一個真實的telnet/SSH連接窗口那樣。
二、如何安裝screen命令?
CentOS7系統可以執行:yum install screen ;
CentOS8系統首先需要安裝epel:yum install epel-release -y;然后再安裝screen:yum install screen-y
三、screen命令常用使用方法
3.1 創建screen會話
可以先執行:screen -S lnmp ,screen就會創建一個名字為lnmp的會話。
3.2 暫時離開,保留screen會話中的任務或程序
當需要臨時離開時(會話中的程序不會關閉,仍在運行)可以用快捷鍵Ctrl+a d(即按住Ctrl,依次再按a,d)
3.3 恢復screen會話
當回來時可以再執行執行:screen -r lnmp 即可恢復到離開前創建的lnmp會話的工作界面。
如果忘記了,或者當時沒有指定會話名,可以執行:screen -ls screen會列出當前存在的會話列表,例如:11791.lnmp即為剛才的screen創建的lnmp會話,目前已經暫時退出了lnmp會話,所以狀態為Detached,當使用screen -r lnmp后狀態就會變為Attached,11791是這個screen的會話的進程ID,恢復會話時也可以使用:screen -r 11791
3.4 關閉screen的會話
執行:exit ,會提示:[screen is terminating],表示已經成功退出screen會話。
3.5 遠程演示
首先演示者先在服務器上執行 screen -S test 創建一個screen會話,觀眾可以鏈接到遠程服務器上執行screen -x test 觀眾屏幕上就會出現和演示者同步。
3.6常用快捷鍵
Ctrl+a c :在當前screen會話中創建窗口
Ctrl+a w :窗口列表
Ctrl+a n :下一個窗口
Ctrl+a p :上一個窗口
Ctrl+a 0-9 :在第0個窗口和第9個窗口之間切換
四、語法
# screen [-AmRvx -ls -wipe][-d <作業名稱>][-h <行數>][-r <作業名稱>][-s ][-S <作業名稱>]
參數說明
-A 將所有的視窗都調整為目前終端機的大小。
-d <作業名稱> 將指定的screen作業離線。
-h <行數> 指定視窗的緩沖區行數。
-m 即使目前已在作業中的screen作業,仍強制建立新的screen作業。
-r <作業名稱> 恢復離線的screen作業。
-R 先試圖恢復離線的作業。若找不到離線的作業,即建立新的screen作業。
-s 指定建立新視窗時,所要執行的shell。
-S <作業名稱> 指定screen作業的名稱。
-v 顯示版本信息。
-x 恢復之前離線的screen作業。
-ls或--list 顯示目前所有的screen作業。
-wipe 檢查目前所有的screen作業,并刪除已經無法使用的screen作業。
在每個screen session 下,所有命令都以 ctrl+a(C-a) 開始。
C-a ? -> 顯示所有鍵綁定信息
C-a c -> 創建一個新的運行shell的窗口并切換到該窗口
C-a n -> Next,切換到下一個 window
C-a p -> Previous,切換到前一個 window
C-a 0..9 -> 切換到第 0..9 個 window
Ctrl+a [Space] -> 由視窗0循序切換到視窗9
C-a C-a -> 在兩個最近使用的 window 間切換
C-a x -> 鎖住當前的 window,需用用戶密碼解鎖
C-a d -> detach,暫時離開當前session,將目前的 screen session (可能含有多個 windows) 丟到后臺執行,并會回到還沒進 screen 時的狀態,此時在 screen session 里,每個 window 內運行的 process (無論是前臺/后臺)都在繼續執行,即使 logout 也不影響。
C-a z -> 把當前session放到后臺執行,用 shell 的 fg 命令則可回去。
C-a w -> 顯示所有窗口列表
C-a t -> Time,顯示當前時間,和系統的 load
C-a k -> kill window,強行關閉當前的 window
C-a [ -> 進入 copy mode,在 copy mode 下可以回滾、搜索、復制就像用使用 vi 一樣
C-b Backward,PageUp
C-f Forward,PageDown
H(大寫) High,將光標移至左上角
L Low,將光標移至左下角
0 移到行首
$ 行末
w forward one word,以字為單位往前移
b backward one word,以字為單位往后移
Space 第一次按為標記區起點,第二次按為終點
Esc 結束 copy mode
C-a ] -> Paste,把剛剛在 copy mode 選定的內容貼上