Screen简介
在Screen环境下,所有的会话都独立的运行,并拥有各自的编号、输入、输出和窗口缓存。用户可以通过快捷键在不同的窗口下切换,并可以自由的重定向各个窗口的输入和输出。
远程服务器的时候,断网或者手误关掉了远程终端,会导致会话中断,程序终止。
而Screen连接的终端,会话独立运行,程序会一直进行。而且会话可以恢复,还可以自行删除。
常用Screen命令
screen -S yourname # 新建一个叫yourname的session
screen -ls # 列出当前所有的session
screen -r yourname # 回到yourname这个session
screen -d yourname # 远程detach某个session # detach快捷键 ctrl a + d
screen -d -r yourname # 结束当前session并回到yourname这个session
screen -S yourname -X quit # 删除叫yourname的session
exit # 退出虚拟终端(关闭):需要在虚拟终端里输入
-
恢复会话
screen -r session_name
如果不能恢复:
对于已经Attached Session则不能直接screen -r,需要先screen -d,然后才能screen -r
用screen -ls可以查看所有的session的状态先
screen -d session_name
再
screen -r session_name
-
删除&(重名怎么删)
重名怎么删,如下图:
1、没有重名的直接可以screen -S session_name -X quit
2、重名的,需要带上id删,screen -S id.session_name -X quit
高级应用
会话共享
s还有一种比较好玩的会话恢复,可以实现会话共享。假设你在和朋友在不同地点以相同用户登录一台机器,然后你创建一个screen会话,你朋友可以在他的终端上命令:
screen -x
这个命令会将你朋友的终端Attach到你的Screen会话上,并且你的终端不会被Detach。这样你就可以和朋友共享同一个会话了,如果你们当前又处于同一个窗口,那就相当于坐在同一个显示器前面,你的操作会同步演示给你朋友,你朋友的操作也会同步演示给你。当然,如果你们切换到这个会话的不同窗口中去,那还是可以分别进行不同的操作的。
最后一次更新于2021-11-04
0 条评论