Linux screen命令 – 记忆角落

Linux screen命令

/ 0评 / 0

screen是什么?

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

通俗的讲,screen命令用于新建一个或多个“命令行窗口”,在新建的这些“窗口”中,可以执行命令,并且这些“窗口”都是独立并行的。

那么怎么使用这逼呢?

linux安装screen

1.yum install -y screen

2.源码安装

https://ftp.gnu.org/gnu/screen/下载gz包到本地,解压至/usr/local下
cd /usr/local/screen
./configure
make
make install
如果提示安装 etc/etcscreenrc ,需要在安装
install -m 644 etc/etcscreenrc /etc/screenrc
然后查看是否安装成功
which screen 会显示安装成功
/bin/screen

3.rpm -ivh screen-4.0.3-19.el6.x86_64.rpm

一、创建会话

最简单的就是直接输入screen然后回车,一个新的会话就创建完成了。

但如果有多个会话就无法很快地根据窗口名称进行切换,很尴尬的,所以建议用:

screen -S name   创建screen

-----demo------
screen -S myScreen

上面命令就是新创建一个名称为myScreen的会话,创建完成后就可以在该会话窗口输入其他命令。

二、离开会话

ctrl+a+d:按住键盘上的ctrl,然后依次按a和d,这时候就又回到主会话了(即离开当前的screen会话)

三、恢复创建的会话

screen -r “id”

-----demo-------
screen -r myScreen

这个命令的意思就是恢复名称为myScreen的会话,但如果你只有一个会话,直接输入screen -r 即可

四、查看已创建的会话

screen -list
或者
screen -ls

上面的命令意思就是可以查看本机已经创建的会话,可以看到会话的名称和会话ID,恢复的时候可以使用ID代替名称。

当恢复会话是出现:There is no screen to be resumed matching ****,我们可强制进入,命令:

screen -d id
----demo-----
screen -D -RR 13366

五、退出screen

使用screen会耗费一定的系统资源,所以当screen中的命令执行完毕之后,直接输入命令:exit

六、其他命令

杀掉一个screen(退出detach):screen -X -S 24322 quit

执行之后 再次 screen  -ls 已经不存在 24322的 screen窗口

七、screen参数

screen参数
 -A 将所有的视窗都调整为目前终端机的大小。
  -d<作业名称> 将指定的screen作业离线。
  -h<行数> 指定视窗的缓冲区行数。
  -m 即使目前已在作业中的screen作业,仍强制建立新的screen作业。
  -r<作业名称> 恢复离线的screen作业。
  -R 先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。
  -s 指定建立新视窗时,所要执行的shell。
  -S<作业名称> 指定screen作业的名称。
  -v 显示版本信息。
  -x 恢复之前离线的screen作业。
  -ls或--list 显示目前所有的screen作业。
  -wipe 检查目前所有的screen作业,并删除已经无法使用的screen作业。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注