zoukankan      html  css  js  c++  java
  • 将所有的终端操作记录及回放

    在教学过程中,因为总是担心学生没有掌握代码的细节,所以会把最终的代码给他们,但是过程是无法保存的。所以采用了如下方法,需要系统中有script和scriptreplay就可以,前者负责录制,后者负责回放。好在script 和 scirptreplay 命令在绝大多数Linux发行版上都可以找到,没有也很容易安装。原理就是把终端会话记录到一个文件中,在需要的时候予以重现,正好可以通过录制终端会话实现制作命令行教学视频教程的需求。

    1、录制:将终端操作过程按照顺序录制时序信息到hello.session,觉得不需要录制时,输入exit结束
      script -t 2> hello.log -a hello.session
    执行完这条shell,会记录下之后的操作的日志到 hello.session中,就可以使用scirptreplay 命令进行回放

    2、回放:

      scriptreplay hello.log hello.session
    3、分享:

      把hello.session分享给学生就可以看到终端操作的过程和细节了。 

    4、记录所有用户的终端活动

      在某些关键业务的 Linux 服务器上,我们希望跟踪所有用户的活动,这可以使用 script 命令来完成,将以下内容放在 /etc/profile 文件中:  

    1. ……………………………………………………
    2. if "x$SESSION_RECORD" "x" ]
    3. then
    4. timestamp=$(date +%d-%m-%Y-%T)
    5. session_log=/var/log/session/session.$USER.$$.$timestamp
    6. SESSION_RECORD=started
    7. export SESSION_RECORD
    8. script ---2>${session_log}.timing $session_log
    9. exit
    10. fi
    11. ……………………………………………………

      文件中,制定了记录的文件格式以日期为记录,以静默的方式启动。一切安好,等着di人上钩吧,哈哈哈哈。保存文件并退出。

      在 /var/log 文件夹下创建 session 目录:

      mkdir /var/log/session

      给该文件夹指定权限:

      chmod 777 /var/log/session/

      到需要的时候可以使用 scriptreplay 命令来重放用户的终端会话活动,那就是你可以保持沉默,但是…… ……:

      scriptreplay --timing session.pkumar.19785.21-06-2019-04:34:05.timing session.pkumar.19785.21-06-2019-04:34:05

    参考文献:http://www.linuxeden.com/a/55615

  • 相关阅读:
    linux设置定时任务的方法(自己总结)
    SecureCRT上传和下载文件
    ajax上传文件类型
    分页业务逻辑
    $.load
    数组中多条对象去重方式
    jquery cookie
    鼠标滚轮事件(浏览器兼容性写法)
    用cookie保存用户的登录信息,规定保存的期限
    获取url参数值
  • 原文地址:https://www.cnblogs.com/guochaoxxl/p/11633645.html
Copyright © 2011-2022 走看看