您的位置:

使用Linux Screen命令进行终端会话管理

一、什么是Screen

Screen是一款基于文本界面的、全屏终端管理工具。它具有很多特性,包括在单个物理终端上同时运行多个独立会话、从远程终端访问会话、断开会话后重新连接、会话共享和会话记录等。

使用Screen可以让你在一个物理终端上同时使用多个会话,不必打开多个终端窗口,也不必在同一个终端里进行不同的任务的切换,因此你可以更加高效地管理你的终端会话。

二、安装Screen

方式一:使用包管理器进行安装

sudo apt-get update 
sudo apt-get install screen

如果你的系统支持包管理器,那么你可以使用包管理器来快速安装Screen。

方式二:下载源码进行编译安装

你也可以到Screen官网(https://www.gnu.org/software/screen/)下载源码,并进行编译安装。

三、常用Screen命令

使用Screen的主要方式是在命令行下输入Screen命令。

1、创建新会话:screen

screen

使用Screen首次创建新会话,可以通过输入Screen命令来创建:

这时,会创建一个新的会话,并在当前物理终端窗口中开启一个新的Shell。这个Shell就是Screen的Shell。

2、新窗口:Ctrl+A, C

Ctrl+A, C

在Screen会话中,可以通过组合键“Ctrl+A,C”来创建新的终端窗口。这时,会在当前会话中新开一个窗口。

3、退出一个窗口:exit

exit

从一个Screen终端窗口中退出,可以使用exit命令。

4、切换窗口:Ctrl+A, n

Ctrl+A, n

在Screen会话中,使用组合键“Ctrl+A,n”可以向后切换到下一个窗口。

5、列出所有窗口:Ctrl+A, "

Ctrl+A, "

你可以通过组合键“Ctrl+A,"”来列出所有的Screen窗口并自行选择你所需要操作的窗口。

6、断开会话:Ctrl+A, d

Ctrl+A, d

当你需要切换到别的任务或是断开Server连接时,可以使用组合键“Ctrl+A,d”来断开此会话并回到原先的终端。

7、重新连接会话:screen -r

screen -r

你可以在任意时间重新连接这个Screen会话,可以使用screen -r命令。

四、会话共享

在多人协同工作时,可以使用Screen进行会话共享。

1、创建一个Screen会话

任意一名用户都可以创建一个新的屏幕会话,如果有启动耗时较长、或需要读取别人的文件的程序,建议由其它用户来启动会话。

2、让会话拥有共享模式

在会话中使用命令screen -x,将多个用户添加到这个会话中,其它用户就可以同时看到这个会话。

screen -x

五、记录会话

你可以使用Screen记录当前屏幕操作的详细情况,这个记录会被保存在会话日志中以便后续查看。

1、开始记录

在Screen会话中使用组合键“Ctrl+A,H”来开始记录会话。

Ctrl+A, H

2、停止记录

在Screen会话中使用组合键“Ctrl+A,H”结束会话记录。

Ctrl+A, H

3、查看记录

使用“screen -L”命令可以列出所有当前会话的日志文件。

screen -L /var/log/screen/<用户名>/
   .log
   

六、其他功能

  • 可以在会话末尾加上必要的参数,向这个会话中导入文件。
  • 可以增加状态栏来快速了解会话的状态、时间等信息。
  • 可以在外部使用FIFO来控制Screen会话操作等。