zoukankan      html  css  js  c++  java
  • linux下用script和scriptreplay对命令行操作录像

    以前查看自己的历史操作,都是history里来查看的,只有命令,有时候系统返回的什么也没有,看了script可以对自己的操作进行录像,于是自己也做个。

    要记录操作之前输入命令:

    [root@wulaoer ~]# script -t 2> test.time -a test.txt
    Script started, file is test.txt
    [root@wulaoer ~]# 
    

    这个时候在输入的命令已经被记录在test.txt这个文件里了。

     1 [root@wulaoer ~]# cat test.txt 
     2 [root@wulaoer ~]# cat test.time 
     3 0.658003 45
     4 0.008807 1
     5 63.881151 1
     6 0.270955 1
     7 0.110210 1
     8 0.160752 1
     9 1.058148 6
    10 0.124927 1
    11 1.307187 2
    12 0.288081 2
    13 0.511079 19
    14 0.008200 18
    15 0.000383 13
    16 4.558387 4
    17 0.386289 4
    18 0.184837 4
    19 0.171161 4
    20 0.211896 1
    21 1.162147 1
    22 0.122721 1
    23 0.836252 3
    24 0.102947 2
    View Code

    我们可以看到这个两个文件的内容已经在写了,如果想停止录像的时候,可以输入。

    [root@wulaoer ~]# exit
    exit
    Script done, file is test.txt
    

    这个时候看当前目录下就有两个文件了,一个是test.time另一个是test.txt,test.time就是记录的时间数据,test.txt记录的就是操作记录,当然,这两个文件的名称和路径,我们可以任意指定。

    [root@wulaoer ~]# ls
    2  anaconda-ks.cfg  a.sql  install.log  install.log.syslog  test.time  test.txt  wulaoer.sql

    我们cat以下这个文件,可以看到刚才的操作记录。

    [root@wulaoer ~]# exit
    exit
    
    Script done on 2016年01月29日 星期五 17时17分19秒

    这里说明一下:-t 2>test.time -t是把时间数据输出到标准错误(standard error)所以我们使用2>test.time把数据转向到test.time这个文件当中。

    这个只是可以看到的,那么我们怎么播放这个记录呢?

    就要用到scriptreplay这个命令了,默认系统里是没有这个命令的,如何安装呢?其实这个脚本是一个pl脚本,在util-linux这个包里可以找到它。在安装前一定要安装gcc,如果不安装在编译的时候肯定报错。

    [root@wulaoer ~]# wget http://dxdown.onlinedown.net/down/util-linux-ng-2.17.2.tar.zip
    [root@wulaoer ~]# unzip util-linux-ng-2.17.2.tar.zip
    [root@wulaoer ~]# tar zxvf util-linux-ng-2.17.2.tar.gz
    [root@wulaoer ~]# cd util-linux-ng-2.17.2
    [root@wulaoer util-linux-ng-2.17.2]# ./configure --without-ncurses && make#注意:这里只有一个make
    [root@wulaoer util-linux-ng-2.17.2]# cp misc-utils/scriptreplay /usr/bin/
    cp:是否覆盖"/usr/bin/scriptreplay"? y
    [root@wulaoer util-linux-ng-2.17.2]# cd ..
    [root@wulaoer ~]# rm -rf util-linux-ng-2.17.2*
    

    这个时候就可以用scriptreplay这个命令来播放刚才的录像了

    [root@wulaoer ~]# scriptreplay test.time test.txt
    

    就可以播放了,不过我们在播放的时候,要注意那两个文件”时间文件“和”命令文件“的顺序不要颠倒了。有了这个,以后做教程什么的,录像之后可以把两个文件发给别人,别人就直接可以看了,很方便。  

    本文参考:http://www.linuxyan.com/web-server/28.html

  • 相关阅读:
    如何在SpringMVC项目中部署WebService服务并打包生成客户端
    Spring MVC前后端数据交互总结
    JAVA总结---序列化的三种方式
    jackson中的@JsonBackReference和@JsonManagedReference,以及@JsonIgnore
    Jackson-deserialization fails on circular dependencies(JackSon无限递归问题)
    @JsonIgnore @JsonIdentityInfo 处理Hibernate 循环引用的问题
    hibernate中因双向依赖而造成的json怪相--springmvc项目
    jackson java转json hibernate懒加载造成的无限递归问题
    C/C++使用心得:enum与int的相互转换
    浅析长子继承制对英国社会的影响
  • 原文地址:https://www.cnblogs.com/wulaoer/p/5168150.html
Copyright © 2011-2022 走看看