來源:
http://www.cnblogs.com/ideas/archive/2011/03/07/1973527.html
功能說明:
使用telnet或SSH遠程登陸linux時,若是鏈接非正常中斷,從新鏈接時,系統將開一個新的session,沒法恢復原來的 session.screen命令能夠解決這個問題。Screen工具是一個終端多路轉接器,在本質上,這意味着你可以使用一個單一的終端窗口運行多終端的應用。
語 法:
screen [-AmRvx -ls -wipe][-d <做業名稱>][-h <行數>][-r <做業名稱>][-s ][-S <做業名稱>]
補充說明:
screen爲多重視窗管理程序。此處所謂的視窗,是指一個全屏幕的文字模式畫面。一般只有在使用telnet登入主機或是使用老式的終端機時,纔有可能用到screen程序。
參 數:
-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參數:
screen -S yourname -> 新建一個叫yourname的session
screen -ls -> 列出當前全部的session
screen -r yourname -> 回到yourname這個session
screen -d yourname -> 遠程detach某個session
screen -d -r yourname -> 結束當前session並回到yourname這個session
在每一個screen session 下,全部命令都以 ctrl+a(C-a) 開始。
C-a ? -> Help,顯示簡單說明
C-a c -> Create,開啓新的 window
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 -> Windows,列出已開啓的 windows 有那些
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 選定的內容貼上