当你需要为别人在终端上演示某些操作或是需要准备一个命令行教程时, 通常得一边手动输 入命令一边演示,或者也可以录制一段屏幕演示视频,然后再回放出来。其实也有其他的实现方 法。利用 script 和 scriptreplay 命令,我们可以录制命令的次序以及时序,将相关数据记录 在文本文件中。利用这些文件,其他人可以在终端上回放并查看命令的输出。
$ script -t 2> timing.log -a output.session
Script started, file is output.session # 开始你的表演
# 这里是你表演的舞台
$ exit
Script done, file is output.session # 停止你的表演
两个配置文件被当做 script 命令的参数。其中一个文件(timing.log)用于存储时序信息,
描述每一个命令在何时运行;另一个文件(output.session)用于存储命令输出。 -t 选项用于将时
序数据导入 stderr 。 2> 则用于将 stderr 重定向到timing.log。
利用这两个文件:timing.log(存储时序信息)和output.session(存储命令输出信息) ,我们可以按照下面的方法回放命令执行过程:
$ scriptreplay timing.log output.session # 按播放命令序列输出
通常,我们会录制桌面环境视频来作为教程使用。但是视频需要大量的存储空间,而终端脚 本文件仅仅是一个文本文件,其文件大小不过是KB级别。
你可以把timing.log和output.session文件分享给任何想在自己的终端上回放这段终端会话 的人。