美文网首页
为何要使用Screen?

为何要使用Screen?

作者: 理子 | 来源:发表于2018-11-29 09:07 被阅读10次
    1. 原因:
    • 因为关闭ssh远程窗口后,运行的程序也会结束。
    • 在执行一个程序的同时执行其他程序。
    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
    

    相关文章

      网友评论

          本文标题:为何要使用Screen?

          本文链接:https://www.haomeiwen.com/subject/zwzoqqtx.html