linux 终端 screem,Linux screen实操指南
今天為大家從實踐角度介紹下如何在linux終端使用screen,相信我,用好screen,可以讓你的工作事半功倍。
01screen是什么
Screen是一個全屏窗口管理器,它可以在多個進程之間多路復用一個物理終端。Screen中有會話的概念,用戶可以在一個會話中創建多個screen窗口,在每一個screen窗口中就像操作一個真實的telent/SSH連接窗口那樣。
通俗的講,screen命令用于新建一個或多個“命令行窗口”,在新建的這些“窗口”中,可以執行命令,并且這些“窗口”都是獨立并行的。
02使用screen
一、創建會話
最簡單的就是直接輸入screen然后回車,一個新的會話就創建完成了。但這樣在會話多的時候就比較麻煩了, 無無法很快地根據窗口名稱進行串口切換,所以還是推薦使用以下命令來創建會話:
screen -S myscreen
上面命令的意思就是新創建一個名稱為myscreen的會話,創建完成后,可以在該會話窗口輸入其他命令,如執行代碼編譯等費時很長的操作。
我們還可以在一個已有screen會話中創建新的窗口。在當前screen窗口中鍵入C-a c,即Ctrl鍵+a鍵,之后再按下c鍵,screen 在該會話內生成一個新的窗口并切換到該窗口。這時可以使用C-a p/n在會話窗口間進行切換。
二、離開會話
按住鍵盤上的ctrl,然后依次按a和d,這時候就又回到主會話了(即離開當前的screen會話),可以在主會話上繼續創建其他會話或者執行其他命令,對我們在2.1中創建的會話沒有任何影響,你甚至可以退出會話。
三、恢復創建的會話
如果還記得會話名稱可以輸入如下命令:
screen -r myscreen
這個命令的意思就是恢復名稱為myscreen的會話,如果你只創建了一個會話,直接輸入如下命令:
screen -r
就可以恢復了,如果忘記了會話名稱或者是直接輸入screen創建的會話,怎么辦?這時候就要用到下面的命令。
四、查看已創建的會話
screen -ls
上面的命令意思就是可以查看本機已經創建的會話,可以看到會話的名稱和會話ID,恢復的時候可以使用ID代替名稱。
時候在恢復會話時可能會遇到There is no screen to be resumed matching ****,遇到這種情況咋辦?輸入命令:
screen -d ****
注意這里的****指代的是matching后面的內容,大家如果用到這個命令需要寫成對應的內容,即所提示的screen名稱。
然后再使用恢復命令恢復就好了。
五、退出screen
使用screen會耗費一定的系統資源,所以當screen中的命令執行完畢之后,直接輸入命令:
exit
即可完成退出。
六、其他命令
你可能注意到給screen發送命令使用了特殊的鍵組合C-a。這是因為我們在鍵盤上鍵入的信息是直接發送給當前screen窗口,必須用其他方式向screen窗口管理器發出命令,默認情況下,screen接收以C-a開始的命令。這種命令形式在screen中叫做鍵綁定(key binding),C-a叫做命令字符(command character)。其他的一些常用命令與相關功能如下:
Ctrl + a,d#暫離當前對會話Ctrl + a,c#在當前screen會話中創建一個子會話Ctrl + a,w#子會話列表Ctrl + a,p#上一個子會話Ctrl + a,n#下一個子會話Ctrl + a,0-9#在第0窗口至第9窗口子會話間切換Ctrl + a,k#殺掉當前窗口Ctrl + a,[#進入復制模式--支持滾屏
03常見問題解決方案
Cannot open your terminal '/dev/pts/0' - please check.有兩種解決辦法分別如下:a)Sign out and properly connect / sign in as the user you wish to use.b)Run script /dev/null to own the shell (more info over at Server Fault); then try screen again.其他常見問題和后續會不斷補充進來,如果有小伙伴有好的補充也歡迎留言,謝謝~
舉報/反饋
總結
以上是生活随笔為你收集整理的linux 终端 screem,Linux screen实操指南的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java ajax清除缓存_JS 清除浏
- 下一篇: VMware虚拟机安装CentOS Li