前语

前几天将项目布置到服务器时,遇到这么个需求:需求在屏幕上显现项目运转状况,一起要实时检查内存等资源的运用状况,还要检查实时的网络状况。

在此之前,上述程序都是在后台运转,当需求检查时才会调出来检查,一来一去怪费事的,后边找了一款东西,完美处理这个问题———screen

screen的效果

screen最简略直接的效果就是能够像Windows一样一起翻开并监督多个终端窗口,一起方便办理各个窗口。

运用screen前:

Linux无法一起监督多个运用?用screen轻松处理

运用screen后:

Linux无法一起监督多个运用?用screen轻松处理

如何运用screen

  • 通常,screen已经预装在大多数Linux发行版中。以下是CentOS 系统中源码安装操作指令(当然也能够运用别的方式下载):
wget https://ftp.gnu.org/gnu/screen/screen-4.8.0.tar.gz
mkdir build && cd build 
../configure
make 
make install
  • screen的创立和检查
screen            //创立一个screen
screen -S yourname //创立一个名称为yourname的screen
screen -ls         //检查一切screen
screen -x          //进入一个最近翻开的状况为attached的screen(关于状况下文会有相关解析)
screen -x yourname //进入名称为yourname,状况为attached的screen
screen -r          //进入一个最近翻开的状况为detached的screen
screen -r yourname //进入名称为yourname,状况为detached的screen
screen -d          //将最近一个状况为attached的screen状况更改为detached
screen -d yourname //将名称为yourname,状况为detached的screen状况更改为detached
  • screen 的状况

Attached:前台运转,通俗来说就是能够在屏幕上看到

Detached:后台运转,能够理解为Windows里的最小化,程序并没有中止运转

  • 进入screen后的常用指令

刚进入screen中会进入指令形式,指令形式中的指令都是以Ctrl a(一起按下)最初,以下简记为C-a

C-a ?	//显现一切键绑定信息
C-a c	//创立一个新的运转shell的虚拟终端窗口并切换到该虚拟终端窗口
C-a n	//切换到下一个虚拟终端窗口
C-a p	//切换到前一个虚拟终端窗口(与C-a n相对)
C-a C-a	//切换到之前显现的虚拟终端窗口
C-a 0..9  //切换到虚拟终端窗口(0..9)
C-a w	//显现一切虚拟终端窗口列表
C-a S     //水平分屏
C-a |     //笔直分屏
C-a tab   //切换分屏
C-a k	//杀掉当时虚拟终端窗口
C-a a	//发送 C-a到当时虚拟终端窗口
C-a [	//进入拷贝/回滚形式
  • screen的退出和封闭
C-a d	//暂时断开screen会话(会将该screen状况变成detached)
exit    //直接封闭该screen会话

运用中曾遇到的问题

  1. 没有注意到screen会话的状况问题,用了错误的指令进入screen会话
  2. Ctrl a需求一起按下,分隔按没有效果

结语

若是觉得以上这些常用指令仍不能处理问题,能够到官网检查相关文档:https://www.gnu.org/software/screen/manual/

以上就是我在运用中总结出来的一点经验,我们若有其他主意和疑问能够发到谈论区,若是对你有帮助,费事点个赞吧!