关于linux上的操作,我们的确可以使用'history'命令来显示出来操作记录,但是有些时候,我们不仅仅需要知道做了什么,还需要知道操作的时候,产生了什么效果,这个时候‘history’命令就显示无能为力了,录屏命令'script'该一展身手了。
录制使用举例:
$ script -t 2>time.file -a output.file #开始录制了
$ ls -al
1.c 2.c 3.c #执行一个命令
$exit #结束录制
使用说明:
1.script/scriptrelpay实现依赖于一个时间点文件time.file和一个输出文件output.file。
2.执行scriptreplay可以模拟之前录制的行为,但务必注意:回放并不能产生任何实际的改变
(例如我在录制期执行了touch 1.cpp
但是回放时并不能真的创建这个文件)
3. 因此此命令一般用于演示,其最大的优点在于可复制两个文本文件,并在不同设备间回放该脚本
参数说明:
1.若想实现完整的录制功能,就必须有一个time文件,文件名可以任意取但一定注意 -t
后面的2>
。这条语句是将stderr重定向输出到文件。缺少这段语句将失去模拟回放的功能
2.output.file存储了全部的输出信息,也是我们回放信息的来源。-a
的意义是将输出append到文件。之所以这么做是因为在录制期间我们已经对命令行作了有效的输出,所以若要保留这些输出信息,必须把输出流复制一下,也就是append。
3.如果不添加-a output.file
这段语句,则默认生成一个名为typescript
的文件,可以使用这个默认文件作为output.file
4.output.file中除了输出的文本信息外,还保存了光标移动的信息。
5.录制脚本后用exit推出
6.如果开始一次新的录制,应该创建两个新的记录文件而非使用原来的。因为脚本的append方式并不会将原来文件内容清空而是在末尾添加。
回放举例:
$ scriptreplay time.file output.file #脚本将会自动回放
对于我而言,我会在回放的时候添加一个参数 -d $num ,用来快进或者放慢,小于1 的小数表示减慢,大于1的数表示加快,比如
scriptreplay time.file output.file -d 2 #快进两倍
如果scriptreplay命令不存在,如下安装:
安装scriptreplay:
1. wget http://dxdown.onlinedown.net/down/util-linux-ng-2.17.2.tar.zip
2. unzip util-linux-ng-2.17.2.tar.zip
3. tar zxvf util-linux-ng-2.17.2.tar.gz
4. cd util-linux-ng-2.17.2
5. ./configure && make (注意此处只是make了)
6. cp misc-utils/scriptreplay /usr/bin/
如果安装失败,报错:
configure: error: ncurses or ncursesw selected, but library not found (--without-ncurses to disable)
只要将上面的第五条命令改成:
./configure --without-ncurses && make
就可以跳过校验成功编译scriptreplay命令
此外,windows也有类似录屏的命令,即问题记录器,使用问题步骤记录器的方法非常简单,在开始菜单中找到「运行」或通过快捷键「Windows+R」来打开运行窗口,
输入「psr」后直接回车,即可看到问题步骤记录器的主界面。
参考:http://www.sohu.com/a/191243679_444417