【轉】screen命令用法和快捷鍵

原文地址:http://www.magentonotes.com/screen-command-shortcuts.html

 

Screen是一個可以在多個進程之間多路複用一個物理終端的窗口管理器,Screen中有會話的概念,用戶可以在一個screen會話中創建多 個screen窗口,在每一個screen窗口中就像操作一個真實的telnet/SSH連接窗口那樣,我們在管理遠程服務器的時候,Screen命令是非常有用的,screen接收以C-a開始的命令,這種命令形式在screen中叫做鍵綁定(key binding),C-a叫做命令字符(command character),C-a 爲 Ctrl鍵+A鍵。

常用的Screen鍵綁定也就是快捷鍵:

C-a ? 顯示所有鍵綁定信息
C-a w 顯示所有窗口列表
C-a C-a 切換到之前顯示的窗口
C-a c 創建一個新的運行shell的窗口並切換到該窗口
C-a n 切換到下一個窗口
C-a p 切換到前一個窗口(與C-a n相對)
C-a 0..9 切換到窗口0..9
C-a a 發送 C-a到當前窗口
C-a d 暫時斷開screen會話
C-a k 殺掉當前窗口
C-a [ 進入拷貝/回滾模

Screen命令語法:

screen [-AmRvx -ls -wipe][-d <作業名稱>][-h <行數>][-r <作業名稱>][-s ][-S <作業名稱>]

Screen命令參數:
-A -[r|R]          將所有的視窗都調整爲目前終端機的大小。
-c filename        用指定的filename文件替代screen的配置文件’.screenrc’.
-d [pid.tty.host]  斷開screen進程(使用該命令時,screen的狀態一定要是Attached,也就是說有用戶連在screen裏)。一般進程的名字是以pid.tty.host這種形式表示(用screen -list命令可以看出狀態)。
-D [pid.tty.host]  與-d命令實現一樣的功能,區別就是如果執行成功,會踢掉原來在screen裏的用戶並讓他logout。
-h <行數>         指定視窗的緩衝區行數。

-ls或–list        顯示目前所有的screen作業。
-m                    即使目前已在作業中的screen作業,仍強制建立新的screen作業。
-p number or name  預先選擇一個窗口。
-r [pid.tty.host]  恢復離線的screen進程,如果有多個斷開的進程,需要指定[pid.tty.host]
-R                      先試圖恢復離線的作業。若找不到離線的作業,即建立新的screen作業。
-s shell             指定建立新視窗時,所要執行的shell。
-S <作業名稱>  指定screen作業的名稱。(用來替代[pid.tty.host]的命名方式,可以簡化操作).
-v                     顯示版本信息。
-wipe                檢查目前所有的screen作業,並刪除已經無法使用的screen作業。
-x                     恢復之前離線的screen作業。

Screen常用的命令:

screen 進入screen模式
exit 退出當前窗口,如果它是此screen的唯一窗口時,此screen也將完全退出。
screen -ls 查看有哪些screen
screen -r id 打開編號爲id的screen窗口
screen -r sessionname 打開名爲sessionname的screen窗口
screen -wipe 清除死掉的會話
screen -dmS sessionname  啓動一個初始狀態斷開的screen會話

screen -d -r:連接一個screen進程,如果該進程是attached,就先踢掉遠端用戶再連接。
screen -D -r:連接一個screen進程,如果該進程是attached,就先踢掉遠端用戶並讓他logout再連接。

更多Screen功能

Screen 提供了豐富強大的定製功能,你可以在Screen的默認兩級配置文件/etc/screenrc和$HOME/.screenrc中指定更多,例如設定 screen選項,定製綁定鍵,設定screen會話自啓動窗口,啓用多用戶模式,定製用戶訪問權限控制等等。如果你願意的話,也可以自己指定 screen配置文件,以多用戶功能爲例,screen默認是以單用戶模式運行的,你需要在配置文件中指定 multiuser on 來打開多用戶模式,通過acl*(acladd,acldel,aclchg…)命令,你可以靈活配置其他用戶訪問你的screen會話。更多配置文 件內容請參考screen的man頁。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章