GNU Screen使用

时间:2022-11-10 08:07:55

基本使用

SSH时可以方便地resume工作

 # open new screen session
screen
# restore
# -d: use the -d option to detach the screen session from the terminal where it's in.
# https://unix.stackexchange.com/questions/240444/cant-resume-screen-says-i-am-already-attached
screen -rd <session_number>

Steps Using GNU Screen

  1. Connect. Connect to a remote server and create a Screen session via ssh -t <server.domain.name> screen -R
  2. Detach. When done with the SSH session, use ctrl-a d to detach from the session. This also disconnect with the SSH server.
  3. Reconnect. The SSH session is still running actually. When you are ready to resume working with the session, use ssh -t <server.domain.name> screen -R again to reconnect, then you are right where you left it.
  4. Terminate. To permanently terminate a Screen session, just disconnect from the server the usual way (ctrl-d).

Limitation: If you are using apps with graphical interface, not just the command line environment, then screen is not suitable for resuming such jobs, and VNC instead would be the ideal choice.

https://bobbielf2.github.io/blog/2017/09/14/using-gnu-screen-to-resume-an-ssh-session/

如何Scroll Back以及设置Scroll Buffer大小

ctrl+a+ESC: copy mode
you can scroll
ESC: exit copy mode
ctrl+a+: then type scrollback 999999

Screen has its own scroll buffer, as it is a terminal multiplexer and has to deal with several buffers.

Maybe there's a better way, but I'm used to scrolling using the "copy mode" (which you can use to copy text using screen itself, although that requires the paste command too):

  • Hit your screen prefix combination (C-a / control+A by default), then hit Escape.

  • Move up/down with the arrow keys (↑ and ↓).

  • When you're done, hit q or Escape to get back to the end of the scroll buffer.

(If instead of q or Escape you hit Enter or Return and then move the cursor, you will be selecting text to copy, and hitting Enter or Return a second time will copy it. Then you can paste with C-a followed by ].)

Of course, you can always use more and less, two commonly used pagers, which may be enough for some commands.

https://unix.stackexchange.com/questions/40242/scroll-inside-screen-or-pause-output

Press Ctrl-a then : and then type

scrollback 10000

to get a 10000 line buffer, for example.

You can also set the default number of scrollback lines by adding

defscrollback 10000

to your ~/.screenrc file.

To scroll (if your terminal doesn't allow you to by default), press Ctrl-a ESC and then scroll (with the usual Ctrl-f for next page or Ctrl-a for previous page, or just with your mouse wheel / two-fingers). To exit the scrolling mode, just press ESC.

Another tip: Ctrl-a i shows your current buffer setting.

https://*.com/questions/8760346/how-do-i-increase-the-scrollback-buffer-in-a-running-screen-session

GNU Screen使用的更多相关文章

  1. 从Tmux 转到GNU Screen

    网上很多地方都说Tmux比GNU Screen要好用,不过无意间看到这篇Switching from tmux to GNU Screen之后,我发现GNU Screen的窗口/区域概念更好,至少是更 ...

  2. GNU Screen Usage

    分屏: 1.在终端输入screen命令 2.Ctrl+a 然后shift+s 上下分屏,切换到下方Ctrl+a tab然后新建一个window(Ctrl+a c) 3.切换到上方,Ctrl+a tab ...

  3. GNU Screen使用入门

    前些天开始学习使用GNU Screen程序,发现这个工具在管理服务器时候确实挺方便的,于是写一篇文章总结一下,顺便介绍Screen的基本使用方法. 简介 GNU Screen是 一个基于文本的全屏窗口 ...

  4. gnu screen的用法

    在使用ssh或者telnet登录远程主机后执行一些耗时的命令, 如果此时ssh或者telnet中断, 那么远程主机上正在执行的程序或者说命令也会*终止. screen能够很好地解决这个问题, scr ...

  5. linux 技巧:使用 screen 管理你的远程会话

    你是不是经常需要 SSH 或者 telent 远程登录到 Linux 服务器?你是不是经常为一些长时间运行的任务而头疼,比如系统备份.ftp 传输等等.通常情况下我们都是为每一个这样的任务开一个远程终 ...

  6. linux screen 命令详解

    一.背景 系统管理员经常需要SSH 或者telent 远程登录到Linux 服务器,经常运行一些需要很长时间才能完成的任务,比如系统备份.ftp 传输等等.通常情况下我们都是为每一个这样的任务开一个远 ...

  7. 源码编译安装screen

    OS:Amazon Linux AMI 2015.09.2 (HVM) #sudo su #wget http://ftp.gnu.org/gnu/screen/screen-4.3.1.tar.gz ...

  8. linux screen 命令详解&lbrack;转&rsqb;

    一.背景 系统管理员经常需要SSH 或者telent 远程登录到Linux 服务器,经常运行一些需要很长时间才能完成的任务,比如系统备份.ftp 传输等等.通常情况下我们都是为每一个这样的任务开一个远 ...

  9. 使用 screen 管理你的远程会话

    文章转载自:https://www.ibm.com/developerworks/cn/linux/l-cn-screen/ 在此只作为笔记使用,不做他用 你是不是经常需要 SSH 或者 telent ...

随机推荐

  1. python内建函数

    人太懒了,博客就慢慢添加吧,这个话题还有很多要学的,后面实践了再来添加,现在就当是开个头. print(dir(__builtins__))  #获取内建属性.函数列表     print(help( ...

  2. Razor 视图引擎 &ndash&semi; ASP&period;NET MVC 4 系列

           Razor 视图引擎是 ASP.NET MVC 3 开始扩展的内容,并且也是默认视图引擎.        Razor 通过理解标记的结构来实现代码和标记之间尽可能顺畅的转换.下面的例子演 ...

  3. Linux 2&period;6 源码学习-内存管理-buddy算法

    核心数据结构 linux 2.6 的内存管理支持NUMA(Non Uniform Memory Access Achitecture),即非一致内存访问体系,在该体系中存在多个CPU,并且拥有分离的存 ...

  4. 更新yum源

    见地址: http://www.cnblogs.com/lightnear/archive/2012/10/03/2710952.html 163的不好用,执行失败,用alibaba的没有问题,如下: ...

  5. yii泛域名

    return CMap::mergeArray( require (dirname(__FILE__) . '/main.php'), array( 'components' => array( ...

  6. Apache 支持PHP

    ①加载PHP模块到Apache中: LoadModule php5_module "d:\php5\php5apache2_2.dll"   ②加入识别扩展名为.php文件(也可以 ...

  7. CentOS 7修复MBR和GRUB

    (转载) 一.修复MBR: MBR(Master Boot Record主引导记录): 硬盘的0柱面.0磁头.1扇区称为主引导扇区.其中446Byte是bootloader,64Byte为Partit ...

  8. 用idea 创建一个spring小demo,基于xml文件配置

    1.首先,File->new->project ,进入新增项目页面 或者在 2.勾选spring,然后点击下一步 3.修改项目名称和项目位置 进入页面后 5.创建一个spring配置文件 ...

  9. java 中的包概念

    Java 中的包package, 就是电脑中的文件夹.我们平时在工作中,文件太多时,都会新建文件夹进行分类管理,java 中的包也是类似的道理,当我们的类太多时,也需要进行分类管理,这时我们就会把类文 ...

  10. java 8 日期函数

    1.Timestamp(long)转成日期 Timestamp timestamp = new Timestamp(System.currentTimeMillis());     LocalDate ...