京东云服务器:使用screen避免远程断开造成影响

发布时间:2021-09-23

  京东云服务器:首先需要大概了解一下screen命令是什么?

  Screen是一个可以在多个进程之间多路复用一个物理终端的全屏窗口管理器。Screen中有会话的概念,用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。

  有了Screen,就不用当心我们在ssh连接linux执行命令或者脚本时候shh断开而造成影响了。

  若是发现没有这个命令,在CentOS系统可以执行:yum install screen安装,Debian或者Ubuntu系统执行:apt-get install screen

  其他系统请自行搜索

  常用的使用方法

  1.1 创建screen会话

  可以先执行:screen -S zgy ,screen就会创建一个名字为zgy的会话。

  

  【创建完zgy的会话以后就可以去放心的执行我们想运行的东西了,在此期间,可以随时关闭SSH,或自己的电脑,我们执行的东西仍然在服务端不停的执行】

  

  1.2 离开或者关闭ssh会话,保留screen会话中的任务或程序的继续执行

  当需要临时离开时(会话中的程序不会关闭,仍在运行)可以用快捷键Ctrl+a d(即按住Ctrl,依次再按a,d)

  

  1.3 恢复screen会话,你会看到它还在自己没有停止的执行!

  当回来时可以再执行执行:screen -r zgy 即可恢复到离开前创建的zgy会话的工作界面。

  

  如果忘记了创建的Scerrn会话名称,或者当时没有指定会话名

  可以执行:screen -ls screen会列出当前存在的会话列表,一串数字.zgy即为刚才的screen创建的zgy会话,目前已经暂时退出了zgy会话,所以状态为Detached,当使用screen -r zgy后状态就会变为Attached,这一串数字是这个screen的会话的进程ID,恢复会话时也可以使用:screen -r 这串数字

  

  1.4 关闭screen的会话

  执行:exit ,会提示:[screen is terminating],表示已经成功退出screen会话。

  

  常用快捷键

  Ctrl+a c :在当前screen会话中创建窗口

  Ctrl+a w :窗口列表

  Ctrl+a n :下一个窗口

  Ctrl+a p :上一个窗口

  Ctrl+a 0-9 :在第0个窗口和第9个窗口之间切换

  

注册即送1000元现金券