为何要使用Screen?

2018-11-29  本文已影响10人  理子
  1. 原因:
  1. 常见使用:
//创建并命名
screen -S session_name
//恢复到该session
screen -r session_name
//查看所有screen会话
screen -ls 
//删除会话
screen -wipe   session_name
//将指定的screen作业离线
screen -d session_name  
//退出 或者ctrl+d
exit
  1. 快捷键
    给screen发送命令使用了特殊的键组合C-a。这是因为我们在键盘上键入的信息是直接发送给当前screen窗口,必须用其他方式向screen窗口管理器发出命令,默认情况下,screen接收以C-a开始的命令。这种命令形式在screen中叫做键绑定(key binding),C-a叫做命令字符(command character)。
C-a ?   显示所有键绑定信息
C-a w   显示所有窗口列表
C-a C-a 切换到之前显示的窗口
C-a c   创建一个新的运行shell的窗口并切换到该窗口
C-a n   切换到下一个窗口
C-a p   切换到前一个窗口(与C-a n相对)
C-a 0..9    切换到窗口0..9
C-a a   发送 C-a到当前窗口
C-a d   离线screen会话
C-a k   杀掉当前窗口
C-a [   进入拷贝/回滚模式
  1. 会话共享
    还有一种比较好玩的会话恢复,可以实现会话共享。假设你在和朋友在不同地点以相同用户登录一台机器,然后你创建一个screen会话,你朋友可以在他的终端上命令:
[root@TS-DEV ~]# screen -x

这个命令会将你朋友的终端Attach到你的Screen会话上,并且你的终端不会被Detach。这样你就可以和朋友共享同一个会话了,如果你们当前又处于同一个窗口,那就相当于坐在同一个显示器前面,你的操作会同步演示给你朋友,你朋友的操作也会同步演示给你。当然,如果你们切换到这个会话的不同窗口中去,那还是可以分别进行不同的操作的。

  1. 会话锁定与解锁
    Screen允许使用快捷键C-a s锁定会话。锁定以后,再进行任何输入屏幕都不会再有反应了。但是要注意虽然屏幕上看不到反应,但你的输入都会被Screen中的进程接收到。快捷键C-a q可以解锁一个会话。

也可以使用C-a x锁定会话,不同的是这样锁定之后,会话会被Screen所属用户的密码保护,需要输入密码才能继续访问这个会话。

  1. Reference:
  1. 解决screen状态为Attached连上不的问题
1.  screen -ls
2.  screen -D  -r <session-id>

解释:-D -r 先踢掉前一用户,再登陆。

8.删除一个screen

screen -ls
122128.test     (12/04/2017 08:35:43 PM)        (Attached)
//删除它screen -S session_name -X quit
screen -S 122128  -X quit
上一篇下一篇

猜你喜欢

热点阅读