Screen是Linux下的一款远程会话管理工具,可以在多个进程之间多路复用一个物理终端的全屏窗口管理器。它可以创建多个会话(Session),每个会话中可以创建多个窗口(Window),每个窗口中可以运行单独的任务,并且互相之间不受影响,还可以方便快速的在不同的窗口和会话之间切换。
安装Screen
首先检查是否已安装,大多数情况下,系统已经安装好了screen
[root@zw~]# rpm -qa|grep screen
screen-4.0.3-19.el6.x86_64
如果没有,可以用下面的命令来安装:
yum -y install screen #CentOS系
apt-get install screen #Debian/Ubuntu系统
如果安装失败的话,从Screen下载地址里面找到与自己系统匹配的安装包,安装即可
常用命令
screen的说明相当复杂,我们只需要掌握下面五个命令就足够使用了:
screen -S test #创建一个名为test的会话
screen -ls # 列出所有会话
screen -d test # 卸载名为test的会话,但会话中的任务会继续执行。
screen -r test # 恢复名为test的会话
exit # 退出当前窗口
常用快捷键
说明:这里的快捷键由三个键组成,如Ctrl+a c,你可以按住Ctrl键,再依次按下a和c。也可以先按一次Ctrl+a,再按一次Ctrl+c。两种方法都是可行的
Ctrl+a c # 在当前screen会话中创建窗口
Ctrl+a d # 效果与screen -d相同,卸载当前会话
Ctrl+a z # 放入后台运行 ,可通过fg恢复到前台
Ctrl+a k # 强制关闭该窗口
Ctrl+a w # 显示当前会话中的窗口列表,显示在标题栏中
Ctrl+a n # 切换到下一个窗口
Ctrl+a p # 切换到上一个窗口
Ctrl+a 0-9 # 在第0个窗口和第9个窗口之间切换
开始使用Screen
在screen中创建一个新的窗口有这样几种方式:
- 直接在命令行键入screen命令
[root@zw ~]# screen
Screen将创建一个执行shell的全屏窗口。你可以执行任意shell程序,就像在ssh窗口中那样。在该窗口中键入exit退出该窗口,如果这是该screen会话的唯一窗口,该screen会话退出,否则screen自动切换到前一个窗口。
- Screen命令后跟你要执行的程序
[root@zw~]# screen vi test.c
Screen创建一个执行vi test.c的单窗口会话,退出vi将退出该窗口/会话。
以上两种方式都创建新的screen会话。
我们还可以在一个已有screen会话中创建新的窗口。
在当前screen窗口中键入Ctrl-a c,即Ctrl键+a键,之后再按下c键,screen 在该会话内生成一个新的窗口并切换到该窗口
或者中途有事处理,可以Ctrl-a z 将任务放入后台运行,待有时间再重新连接,找到该screen会话并fg恢复