功能說明
使用telnet或SSH遠程登錄linux時,如果連線非正常中斷,重新連線時,系統將開一個新的session,無法恢復原來的session.screen命令可以解決這個問題。Screen工具是一個終端多路轉接器,在本質上,這意味著你能夠使用一個單一的終端視窗運行多終端的套用。
語法
screen [-AmRvx -ls -wipe][-d <作業名稱>][-h <行數>][-r <作業名稱>][-s <shell>][-S <作業名稱>]
補充說明
screen為多重視窗管理程式。此處所謂的視窗,是指一個全螢幕幕的文字模式畫面。通常只有在使用telnet登入主機或是使用老式的終端機時,才有可能用到screen程式。
參數
-A 將所有的視窗都調整為當前終端機的大小。
-d<作業名稱> 將指定的screen作業離線。
-h<行數> 指定視窗的緩衝區行數。
-m 即使當前已在作業中的screen作業,仍強制建立新的screen作業。
-r<作業名稱> 恢復離線的screen作業。
-R 先試圖恢復離線的作業。若找不到離線的作業,即建立新的screen作業。
-s<shell> 指定建立新視窗時,所要執行的shell。
-S<作業名稱> 指定screen作業的名稱。
-v 顯示版本信息。
-x 恢復之前離線的screen作業。
-ls或--list 顯示當前所有的screen作業。
-wipe 檢查當前所有的screen作業,並刪除已經無法使用的screen作業。
備註
在每個screen session 下,所有命令都以 ctrl+a(C-a) 開始。
C-a ? -> Help,顯示簡單說明
C-a " -> 列出終端列表
C-a A -> 重命名終端
C-a c -> 創建新的終端,並切換到該終端
C-a d -> 暫時斷開會話,但所有任務都依然執行
C-a K -> 關閉當前終端,並切換到下一個終端(當沒終端時 退到原始shell終端)
C-a n -> 切換到下一個終端
C-a p -> 切換到上一個終端
C-a t -> 顯示當前時間,和系統的 load
C-a S -> 新建水平線分割終端
C-a Tab -> 水平線切換終端
C-a X -> 關閉當前終端
C-a + -> 擴大當前終端
C-a - -> 縮小當前終端
C-a [Space] -> 視窗切換
C-a 0-9 -> 在0-9個終端之間切換
C-a C-a -> 最近使用的2個視窗切換
C-a w -> 列出終端列表
C-a x -> 鎖住當前視窗,需用用戶密碼解鎖
C-a z -> 把當前會話放到後台執行,用 shell 的 fg 命令則可回去。
exit:關閉當前終端 (註:和“C-a c”一樣
Ctrl-a:
:screen <command> 新建 screen 終端,並運行命令<command>
:resize <height> 改變當前視窗高度為<height>
:quit 退出 screen 關閉所有 screen 終端,結束其中所有任務
Ctrl-a <Esc> 進入選擇模式
<PageUp> 或 Ctrl-u 游標上移一頁
<PageDown> 或 Ctrl-d 游標下移一頁
<Left> 或 h 游標左移一格
<Down> 或 j 游標下移一行
<Up> 或 k 游標上移一行
<Right> 或 l 游標右移一格
<Space> 選擇開始,選擇結束
<Esc> 退出選擇模式
Ctrl-a ] 貼上選擇的內容