Linux之screen创建、切换、记录屏幕日志

由于screen的命令太多、太强大,这里扼要的写下screen的创建、切换、恢复会话和窗口缓存log重定向的使用!
* 这里假定已经安装好了screen,版本号为:Screen version 4.03.01 (GNU) 28-Jun-15

screen 介绍与使用大全

点击去看: 传送门

创建、查看会话

#创建会话为jeeinn的窗口
screen -S jeeinn

#查看当前所有的会话窗口
screen -ls

输出:

There are screens on:
        21230.jeeinn    (02/20/2017 08:07:29 AM)        (Attached)

切换、恢复会话

脱离当前会话,返回上一状态,使用快捷键

c-a + d
  • 注:c-a是指control+a组合键,先按下control+a、再按下d即可

恢复指定会话:

screen -r jeeinn

窗口缓存log重定向

  • 方法一:

启动时添加选项-L(Turn on output logging.),会在当前目录下生成screenlog.0文件,如:

screen -L -S jeeinn
  • 方法二:
    在创建的screen会话窗内使用快捷键来控制记录开始与停止
c-a + H

第一次按下ctrl+a H,屏幕左下角会提示Creating logfile "screenlog.0".,开始记录日志。

再次按下ctrl+a H,屏幕左下角会提示Logfile "screenlog.0" closed.,停止记录日志。

log记录问题

在记录log的时候有个缺点:当创建多个screen会话的时候,所有的会话记录都会写入screenlog.0文件。

解决方法是,让每个screen会话窗口有单独的日志文件。

在screen配置文件/etc/screenrc最后添加下面一行:

logfile /tmp/screenlog_%t.log

%t是指window窗口的名称,对应screen的-t参数。
所以我们启动screen的时候要指定窗口的名称,例如:

screen -L -t jeeinn -S jeeinn

屏幕日志记录在/tmp/screenlog_jeeinn.log

参考

http://www.linuxidc.com/Linux/2014-09/106217.htm

http://www.ibm.com/developerworks/cn/linux/l-cn-screen/

Author: thinkwei

发表回复

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