首页 > 代码库 > (工具类)Linux笔记之终端日志记录工具script

(工具类)Linux笔记之终端日志记录工具script

在学习Linux时,有时候终端的打印消息对于我们很重要,可是终端显示也是有一定的缓冲空间的。当信息打印许多时,前面的信息就会被覆盖掉。所以这里网上搜索了一下这方面的介绍。现总结例如以下:    

script 是一个非常使用的工具,同一时候也足够的好玩。script 能够将终端的会话过程录制下来,然后使用 scriptreplay 就能够将其录制的结果播放给他人观看。script 的优点就在于。你在终端中的全部操作过程,它都能够原原本本地进行录制。

我们能够将这样的录制应用在非常多方面,诸如教学、演示等等。


    一般来说,script 和 scriptreplay 在 Linux 发行版中都有默认安装。假设你打算使用 script 開始录制终端会话,能够敲入下列指令: 
script -t 2>yangrui.timing -a yangrui.session
    该指令中的 -t 选项指明输出录制的时间数据,而 -a 选项则输出录制的文件(假设此文件已存在,则加入数据在后面)。你能够将指令中的 yangrui换成自己设置的文件名。当终端中返回“Script started, file is yangrui.session”的信息时。你就能够进行须要录制的操作了。



假设须要结束录制过程,则输入

exit 

要播放已录制完毕的终端会话。能够使用指令:

   scriptreplay yangrui.timing yangrui.session
就能够像看电影一样查看操作了,可是不能快进后退(也有可能是我临时未发现,假设哪位懂得,能够顺便教一下我技术分享)。个人建议使用:
cat yangrui.session

查看内容。假设在图形界面打开yangrui.session,会发现文件里将充满控制字符和ANSI转义序列,看起来如同乱码:

技术分享

解决方法能够网上搜索到。个人建议使用命令行查看就可以。


当下一次想继续录制时,就再次输入:

script -t 2>yangrui.timing -a yangrui.session

它就会把录制的数据放在上一次数据的后面。并自己主动用时间分隔开来。


关于 script 及 scriptreplay 的很多其它信息,能够使用 man script 或 man scriptreplay 查询。

(工具类)Linux笔记之终端日志记录工具script