linux 终端 screem,Linux screen实操指南

f594837bcd186ca148e0361132dfb968.png

今天为大家从实践角度介绍下如何在linux终端使用screen,相信我,用好screen,可以让你的工作事半功倍。

01screen是什么

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

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

02使用screen

一、创建会话

3ea719e68d0a266efcf748874b750956.png

最简单的就是直接输入screen然后回车,一个新的会话就创建完成了。但这样在会话多的时候就比较麻烦了, 无无法很快地根据窗口名称进行串口切换,所以还是推荐使用以下命令来创建会话:

screen -S myscreen

上面命令的意思就是新创建一个名称为myscreen的会话,创建完成后,可以在该会话窗口输入其他命令,如执行代码编译等费时很长的操作。

我们还可以在一个已有screen会话中创建新的窗口。在当前screen窗口中键入C-a c,即Ctrl键+a键,之后再按下c键,screen 在该会话内生成一个新的窗口并切换到该窗口。这时可以使用C-a p/n在会话窗口间进行切换。

二、离开会话

按住键盘上的ctrl,然后依次按a和d,这时候就又回到主会话了(即离开当前的screen会话),可以在主会话上继续创建其他会话或者执行其他命令,对我们在2.1中创建的会话没有任何影响,你甚至可以退出会话。

三、恢复创建的会话

如果还记得会话名称可以输入如下命令:

screen -r myscreen

这个命令的意思就是恢复名称为myscreen的会话,如果你只创建了一个会话,直接输入如下命令:

screen -r

就可以恢复了,如果忘记了会话名称或者是直接输入screen创建的会话,怎么办?这时候就要用到下面的命令。

四、查看已创建的会话

screen -ls

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

时候在恢复会话时可能会遇到There is no screen to be resumed matching ****,遇到这种情况咋办?输入命令:

screen -d ****

注意这里的****指代的是matching后面的内容,大家如果用到这个命令需要写成对应的内容,即所提示的screen名称。

然后再使用恢复命令恢复就好了。

五、退出screen

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

exit

即可完成退出。

六、其他命令

你可能注意到给screen发送命令使用了特殊的键组合C-a。这是因为我们在键盘上键入的信息是直接发送给当前screen窗口,必须用其他方式向screen窗口管理器发出命令,默认情况下,screen接收以C-a开始的命令。这种命令形式在screen中叫做键绑定(key binding),C-a叫做命令字符(command character)。其他的一些常用命令与相关功能如下:

Ctrl + a,d#暂离当前对会话Ctrl + a,c#在当前screen会话中创建一个子会话Ctrl + a,w#子会话列表Ctrl + a,p#上一个子会话Ctrl + a,n#下一个子会话Ctrl + a,0-9#在第0窗口至第9窗口子会话间切换Ctrl + a,k#杀掉当前窗口Ctrl + a,[#进入复制模式--支持滚屏

03常见问题解决方案

46d933e9298d72698981317c8b1fce66.png

Cannot open your terminal '/dev/pts/0' - please check.有两种解决办法分别如下:a)Sign out and properly connect / sign in as the user you wish to use.b)Run script /dev/null to own the shell (more info over at Server Fault); then try screen again.其他常见问题和后续会不断补充进来,如果有小伙伴有好的补充也欢迎留言,谢谢~

举报/反馈

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值