Linux命令(18)——screen命令

来源:互联网 发布:淘宝钻号出售 编辑:程序博客网 时间:2024/06/05 02:09

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,强行关闭当前的windowCtrl+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 modeCtrl+a+]:paste,把刚刚在 copy mode 选定的内容贴上。

参考文献

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

原创粉丝点击