前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux命令(18)——screen命令

Linux命令(18)——screen命令

作者头像
恋喵大鲤鱼
发布2018-08-03 11:06:48
1.7K0
发布2018-08-03 11:06:48
举报
文章被收录于专栏:C/C++基础C/C++基础

1.简介

screen是GNU计划开发的用于终端命令行的管理工具,可以新建和管理多个终端命令行会话,并提供切换,分离,挂接等相应的功能。

screen其实就是Linux虚拟终端,可以用它创建多个虚拟终端,每个终端可以创建1~10个窗口,每个窗口相当于一个Linux Shell会话窗口,可执行的操作和正常Shell完全一样。其重要的特点就是终端断开连接后,screen新建的命令行会话中的程序和任务是保存在后台运行的,不会因为终端窗口关闭或者断开连接而终止执行。

详细说明参见GNU Screen官方站点

2.命令格式

screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s ][-S <作业名称>]

3.选项说明

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

4.常用示例

screen -S yourname: 新建一个叫yourname的session;
screen -ls: 列出当前所有的screen session,注意显示的screen会话的命名格式是pid.name,其中pid指的是screen的进程号,name就是screen会话的名称。
screen -r yourname: 回到yourname这个session;
screen -d yourname: detach某个session;
screen -d: detach当前session;
screen -d -r yourname: 分离已经连接的session,重新回到yourname。
exit:关闭当前窗口,并且切换到下一个窗口(当退出最后一个窗口时,该screen会话自动终止,并且退回到原始shell状态)。 

进入一个screen会话中,才可以切换窗口,在每个screen session下,所有快捷键都以Ctrl+a开始。常用快捷键如下:

Ctrl+a+?:显示所有键绑定信息。
Ctrl+a+c:创建一个新的运行shell窗口并切换到该窗口。
Ctrl+a+n:切换到下一个window。
Ctrl+a+p:切换到前一个window。
Ctrl+a+0..9:切换到第0..9个window。
Ctrl+a [Space]:由视窗0循序切换到视窗9 
Ctrl+a+d:分离当前screen会话,即退出当前screen会话。将目前的screen session (可能含有多个 windows) 丢到后台执行,并会回到还没进 screen 时的状态,此时在 screen session 里,每个 window 内运行的 process (无论是前台/后台)都在继续执行,即使 logout 也不影响。 Ctrl+a+z -> 把当前session放到后台执行,用 shell 的 fg 命令则可回去。
Ctrl+a Ctrl+a:在两个最近使用的window间切换。
Ctrl+a+x:锁住当前的window,需用用户密码解锁。
Ctrl+a+w:显示所有窗口列表。
Ctrl+a+t:time,显示当前时间和系统的平均负载(Load Average,是一段时间内系统的平均负载,这个一段时间一般取1分钟、5分钟、15分钟)。
Ctrl+a+k:kill window,强行关闭当前的window
Ctrl+a+[:进入copy mode,在copy mode下可以回滚、搜索、复制就像使用vi一样,常用快捷键有: 
    Ctrl+b:Backward,PageUp
    Ctrl+f:Forward,PageDown 
    H:High,将光标移至左上角
    L:Low,将光标移至左下角
    0:移到行首
    $:行末
    w:forward one word,以字为单位往前移
    b:backward one word,以字为单位往后移
    Space:第一次按为标记区起点,第二次按为终点
    Esc 结束copy mode
Ctrl+a+]:paste,把刚刚在 copy mode 选定的内容贴上。

参考文献

[1]Linux命令大全.screen命令 [2]系统load average

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017年11月16日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.简介
  • 2.命令格式
  • 3.选项说明
  • 4.常用示例
  • 参考文献
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档