远程会话管理工具:screen

1 screen 是什么

screen通俗的说就是一个关于ssh的远程会话的管理工具。

2 screen 有什么用

  • 创建一个screen会话之后,即使中途ssh突然断开,在当前会话下执行的程序(或命令)也能够继续执行,不受影响
  • 通过创建screen会话,其他人也可以进入创建的screen会话观察程序(或指令)的执行情况

3 screen 如何使用

3.1 screen会话的查询

查看当前存在的哪些screen会话

1
screen -list

如果当前存在screen会话,就会显示:

其中,30599是创建的screen会话的pid,demo是screen会话的名称,Detached是当前screen会话的状态,Detached表示当前会话没有人正在操作,还有另一个状态Attached,表示当前会话有人正在操作。

3.2 screen会话的创建

创建一个screen会话,通过-S选项可以指定要创建的screen会话的名称

1
screen -S [screen会话名称]

3.3 暂时离开会话(程序和指令继续执行)

通过ctrl a d(按住ctrl,然后按a再按d),可以暂时退出会话,但是会话中的程序会继续执行。(注意区分和后面退出会话的区别)

3.4 screen会话的恢复

1
screen -r screen会话的pid或screen会话的名称

3.5 screen会话的删除

方法一:通过screen -r进入想要删除的screen会话,然后输入exit退出当前screen会话(会话中的程序不会在继续执行)

方法二:如果不能进入screen会话,通过kill screen会话pid将当前screen会话删除

3.6 screen会话的共享

其他人可以链接到远程服务器,通过-x选项观看当前screen会话正在执行的程序

1
screen -x screen会话的名称或screen会话的pid

4 参考资料