Screen是一款由GNU计划开发的用于命令行终端切换的自由软件。
用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。
会话恢复:
只要Screen本身没有终止,在其内部运行的会话都可以恢复。这一点对于远程登录的用户特别有用——即使网络连接中断,用户也不会失去对已经打开的命令行会话的控制。只要再次登录到主机上执行screen -r就可以恢复会话的运行。同样在暂时离开的时候,也可以执行分离命令detach,在保证里面的程序正常运行的情况下让Screen挂起(切换到后台)。这一点和图形界面下的VNC很相似。
比如xshell01和xshell02,连接到同一台Linux上,是不是各自就只能看到自己的页面。
而screen的作用就是在xshell01的操作在下xshell02上也可以看见,而且也可以进行操作。
常用选项:
-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命令
1.安装screen
[root@localhost ~]# yum -y install screen.x86_64
2.创建会话
[root@localhost ~]# screen -S qin //会话名为qin
[root@localhost ~]#screen -ls //查看会话
3.复制ssh渠道加入到刚创建的会话
[root@localhost ~]# screen -ls
There are screens on:
11753.qin (Attached)
[root@localhost ~]# screen -x qin //加入会话qin
加入后就可以看见会话qin的页面了。也可以进行操作。
4.删除会话
[root@localhost ~]# screen -S qin -X quit
//删除会话qin