【Linux】 会话窗口管理screen

What is screen

screen可以看作是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。screen中有会话的概念,,用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。可实现会话恢复、会话共享、多窗口等。
(这段hin无聊!反正screen就是用于会话窗口管理

One、先把安装包给装起来:

[root@super ~]# rpm -ivh /media/Packages/screen-4.1.0-0.21.20120314git3c2946.el7.x86_64.rpm

或者直接:[root@super ~]# yum install screen
确认一下是否安装(有输出安装包表示已经安装):

[root@super ~]# rpm -q screen
screen-4.1.0-0.21.20120314git3c2946.el7.x86_64

How to play screen ?

Ⅰ、新建一个screen
①直接敲命令screen就可进入一个screen会话窗口,但这样产生的窗口没有名称(后续也可自己加名称)
②最好还是这样来:创建一个名为test1的会话窗口(S用于指定会话名

[root@super ~]# screen -S test1

执行以后就进入到screen界面,其中的命令提示符和终端并无差池(我和我的小伙伴都以为没进去呢!!!)憋慌,已经进去了,在screen会话窗口相当于一个终端,接下来咱们用ls选项列出所有screen窗口

[root@super ~]# screen -ls
There is a screen on:
    9953.test1  (Attached)
1 Socket in /var/run/screen/S-root.
这里9953为会话号

Ⅱ、一些快捷键

  • Ctrl + a 数字:用于在多个screen会话窗口间的切换
  • Ctrl + a k:用于杀死当前screen会话窗口(会在底行询问)
    –>在会话窗口下敲exit也可退出
  • Ctrl + a x:锁住当前screen会话窗口,解锁需要用root密码
    –>Ctrl+s可以凝固当前窗口,解锁用Ctrl+Shift+v
  • Ctrl + a d:离开当前screen会话窗口(挂起,在后台运行)
  • Ctrl + a c:创建一个新的screen会话窗口
  • Ctrl + a w:显示所有screen会话窗口列表

Ⅲ、会话恢复
情景:当我们在screen窗口中执行某个很耗时的命令时,我们可以使用快捷键让其挂起在后台执行。那如何恢复呢?来,一起敲下面的命令(-r表示恢复):

[root@super ~]# screen -r 会话号

如果此时使用[root@super ~]# screen -ls查看的会话窗口是Attached状态,说明此时有用户正在使用该会话窗口,此时则需要先执行
[root@super ~]# screen -d 会话号强制占用的用户退出,再执行-r恢复

Ⅳ、会话共享–>非常好玩
我使用xshell打开两个伪终端,其中一个终端新建一个screen会话窗口,另一个执行:
[root@super ~]# screen -x 会话号(只有一个会话时可不指定会话号)
可实现会话共享,相当于QQ的远程操控电脑。两个终端任意一个执行操作都会实时共享,如下图

在上例Ⅲ中出现Attached状态时,可以使用-x选项直接进入到会话窗口

你可能感兴趣的:(linux下的小工具)