2009年6月5日 星期五

[Liunx] 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

開啟、關閉、切換

Ctrl-a " : choose to switch

Ctrl-a ' : (number) or (name) to switch

Ctrl-a Shift-a : 更改 screen name (不然每個都叫 bash 也不好)

Ctrl+a c 開啟新的視窗,並同時切換到這個新的視窗

Ctrl+a n 或 C-a (space) 切換到下一個視窗

Ctrl+a p 切換到上一個視窗

Ctrl+a 0 切換到第 0 個視窗

Ctrl+a (1..9) 切換到第 (1..9) 個視窗

Ctrl+a w 列出目前所開啟的視窗

Ctrl+a C 清除目前的視窗內容

Ctrl+a K 關閉單一的視窗

Ctrl+a i 顯示目前視窗的資訊

Ctrl+a d 脫離(detach)目前的 screen ,並放到背景執行(不管開了幾個視窗)

Ctrl+a H 紀錄目前視窗所有顯示過的東西(檔名為 screenlog.n n 為視窗號碼)

Ctrl+a l 重繪視窗,如果有字顯示亂掉了可以用這個指令

Ctrl+a m或 C-a (enter) 可以顯示最近一次顯示過的訊息

Ctrl+a t 顯示系統的時間及主機名稱還有負載

Ctrl+a v 顯示版本資訊

Ctrl+a x 暫時離開目前位置又不想先 logout ,那可以用這個來鎖住 screen

Ctrl+a ? 線上求助畫面

Ctrl+a [ 複製/捲軸 模式

h, j, k, l 分別為向左,向下,向上,向右移動一格(或是一行)
0 移到該行最左邊
^ 與 $ 分別移到該行最左邊及最右邊的非空白字元
w 以字為單位往前移動並移到字首
b 以字為單位往後移動並移到字首
e 以字為單位往前移動並移到字尾
C-b 向上捲一頁
C-f 向下捲一頁
C-u 向上捲半頁
C-u 向下捲半頁
/ 與 ? 向下或向上尋找字串
(space) 第一次按下到第二次按下的區域會被複製到暫存區內
(ESC) 離開 複製/捲軸 模式
 

Ctrl+a ] 把剛剛存到暫存區內的內容複製出來

萬一, 已經開始的 screen (用很久了) 但是卻看不到下面的 status bar, 就這麼做:
ctrl-a :
然後打入
caption always "%{bw}%0C%A %Y/%m/%d %LD %{wb} %-w%{Y}[%n %t]%{w}%+w%{k}"

【下列文章您可能也有興趣】

沒有留言: