参考文献:https://yq.aliyun.com/articles/625453(asciinema终端录屏神器使用及过坑)
参考文献:https://zhuanlan.zhihu.com/p/28423868(教你使用 asciinema 录制命令行操作)
参考文献:http://www.51testing.com/html/32/n-4463232.html?nomobile=1 (Linux 终端回放神器:如何优雅的使用 Asciinema)
参考文献:https://www.jb51.net/article/163344.htm(详解Python3中setuptools、Pip安装教程)
参考文献:https://blog.csdn.net/harbor1981/article/details/51135623(Linux开启安装EPEL YUM源)
参考文献:https://www.cnblogs.com/litifeng/p/6939584.html(Centos7中一次性安装开发者工具,会一次安装很多常用的开发包,包括gcc,g++等编译文件必须的工具。)

先说效果


可以实现悄悄录制,原理是在/etc/profile 文件末尾中加入
python3 -m asciinema rec “/home/java/sshVideo/.$(date +pts-%Y%m%d%H%M%S%N)” -q && exit
source /etc/profile

当用户使用xshell 或 finalshell等工具连接主机时, 整个过程敲的命令和命令的结果都会被悄悄录制。搭配使用asciinema的play播放器就可以像看视频一样,回放敲命令的执行过程。效果挺赞的。(-q静默参数如果省略,录屏开始时会提示正在录制。)

安装时注意

python3的环境,离线安装,通过Github下载asciinema压缩包。
https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz
https://github.com/asciinema/asciinema.git

使用时常用的两条命令

asciinema rec / fileName #录屏
#asciinema play fileName #播放

重点说完了,安装时有点曲折,但是使用起来就是那么简单。

以下内容搬运自51testing.com

(Linux 终端回放神器:如何优雅的使用 Asciinema)

asciinema 是一款开源免费的终端录制工具,它可以将命令行输入输出的任何内容加上时间保存在文件中,同时还提供方法在终端或者web浏览器中进行回放。
asciinema的录制和播放都是基于文本的,相比传统的video有很多好处,例如录制文件体积小,在播放的过程中可以暂停复制其中的文本内容等等。同时 asciinema 还提供了一个网站,你如果愿意还可以将录制的内容上传至 asciinema.org 进行展示。

asciinema 由以下三个子项目构成
  asciinema:基于命令行的终端会话记录器
  asciinema.org:提供API供上传录像和展示的网站
  javascript player:用于在web上播放录像的js播放器
  asciinema 的安装和使用都非常简单,一起来看看吧。
  
安装
  asciinema 为 python 开发,可以直接通过apt-get、yum或者pip进行安装

apt-get install asciinema

安装完成后查看版本

asciinema --version

asciinema 2.0.2
  asciinema 有v1和v2两个版本,差异较大,咖啡君使用了v2,以下所有内容也基于v2演示。
asciinema 有5个参数,分别为录制:rec,播放:play,以文件形式查看录制内容:cat,上传文件到 asciinema.org 网站:upload、asciinema.org 账号认证:auth,本文主要说明rec和play的使用。

录制

asciinema rec ops-coffee.cast

有几个参数可以使用:
  --stdin表示启用标准输入录制,意思是通常情况下linux输入密码类的信息都不会显示,如果开启了这个选项,可以记录键盘输出的密码,但这个功能官方似乎还没有支持,加了后看不到效果。
  --append 添加录制到已存在的文件中。
  --raw 保存原始STDOUT输出,无需定时信息等。
  --overwrite 如果文件已存在,则覆盖。
  -c 要记录的命令,默认为$SHELL。
  -e 要捕获的环境变量列表,默认为SHELL,TERM。
  -t 后跟数字,指定录像的title。
  -i 后跟数字,设置录制时记录的最大空闲时间。
  -y 所有提示都输入yes
  -q 静默模式,加了此参数在进入录制或者退出录制时都没有提示。
输入exit或按ctrl+D组合键退出录制。

播放

asciinema play ops-coffee.cast

有两个参数可以使用:
  -s 后边跟数字,表示用几倍的速度来播放录像
  -i 后边跟数字,表示在播放录像时空闲时间的最大秒数
在播放的过程中你可以通过空格来控制暂停或播放,也可以通过ctrl+c组合键来退出播放,当你按空格键暂停时,可以通过.号来逐帧显示接下来要播放的内容。

文件
  asciinema 推荐的文件后缀是.cast,当然linux是不关心文件后缀的,你用什么都可以,推荐按规范使用.cast,文件内容大概如下

cat ops-coffee.cast

{“version”: 2, “width”: 237, “height”: 55, “timestamp”: 1572646909, “env”: {“SHELL”: “/bin/bash”, “TERM”: “linux”}, “title”: “ops-coffee”}
  [0.010014, “o”, "root@onlinegame:~# "]
  [1.296458, “o”, “exit”]
  [1.976439, “o”, “\r\n”]
  [1.976532, “o”, “exit\r\n”]
  cast 文件主要有两部分组成,位于第一行的一个字典,这里叫 header
{
  “version”: 2,
  “width”: 237,
  “height”: 55,
  “timestamp”: 1572646909,
  “env”: {
  “SHELL”: “/bin/bash”,
  “TERM”: “linux”
  },
  “title”: “ops-coffee”
  }
  header很简单,字段的意思分别为:version版本,width和height分别表示录制窗口的宽高,timestamp录制开始的时间戳,env录制时指定的-e参数设置,title录制时指定的-t参数设置。
  接下来的都是固定格式的内容,实际上就是IO流信息
[0.010014, “o”, "root@onlinegame:~# "]
  每一行都是由三部分组成的一个列表
  第一部分为一个浮点数,表示输入输出这一行内容所花的时间
  第二部分似乎是一个固定的字符串,没有找到说明做什么用的
  第三部分就是具体的输入输出的内容
  这个文件格式设计还是非常优雅的,开头 header 声明,后边具体内容,如果中途因为任何意外导致录像终止,也不会丢失整个录像,而且还可以 append 增加录像,这在需要长时间暂停录制时非常有用,更重要的是可以流式读取,几乎很少占用内存,不需要把整个录像文件都放在内存中,对长时间的录制播放更友好。
自动录制审计日志
  如果你有经历过严格的IT审计,或者有用到堡垒机,就会知道操作过程是需要记录并加入审计的,如果你有因为不知道是谁操作了什么导致了数据被删而背锅的经历,就会知道对操作过程的记录有多么的重要,接下来以一个简单的案例来介绍asciinema有什么样的实用价值。
  非常简单,只需要在 devuser 用户的家目录下添加.bash_profile文件即可,内容如下:
$ cat ~/.bash_profile
  export LC_ALL=en_US.UTF-8
  /usr/local/bin/asciinema rec /tmp/USER−USER-USER−(date +%Y%m%d%H%M%S).log -q
  添加export LC_ALL=en_US.UTF-8的原因是有可能系统会报错:
asciinema needs a UTF-8 native locale to run. Check the output of locale command.
  rec命令进行录制时添加了-q 参数,这样在进入或者退出时都不会有任何关于 asciinema 的提示,使用简单方便。
  这样 devuser 用户每次登陆就会自动开启一个录像,如果需要审计或检查操作,只需要回放录像就可以了。
   相比history命令,asciinema 有什么优势呢?asciinema 不仅可以记录用户的输入,还可以记录系统的输出,也就是说history只能记录执行的命令,而 asciinema 还可以记录执行的结果,赶紧试试吧。

Asciinema终端SSH录屏神器使用相关推荐

  1. asciinema终端录屏神器使用及过坑

    在github上接触到asciinema,一个强大的神器. 它能够在linux等终端上进行录屏,并且录屏不生成视频文件,而是生成文字形式! 另外,它还能够将录制的结果上传到asciinema.org中 ...

  2. Linux|centos7|终端录屏神器asciinema的部署和初步使用

    前言: Linux下的录屏软件不是很多的,但最近在青云云计算官网无意中发现了一个Linux下的录屏神器,非常的nice,只是在分享方面比较弱. 下面将就centos7下如何部署asciinema,以及 ...

  3. Linux终端共享分屏神器tmux

    Linux终端共享分屏神器tmux tmux几大特色 会话与窗口解绑,终端执行的任务不再因为关闭窗口而中断 会话共享,tmux的会话可以被多人共享,同时操作,方便异地操作 支持窗口被水平垂直任意分割 ...

  4. 怎么录屏?5 款免费无水印的录屏神器

    无论您是想记录游戏中令人难忘的时刻.与他人分享视频教程,还是做更多类似的事情,都必须使用屏幕录像机.从 Internet 上很容易获得屏幕录像机:然而,找到一个"好"的并不是那么简 ...

  5. Camtasia“喀秋莎”2022一款录屏神器

    说实话,可以实现录屏功能的软件有不少,而且有一些还是免费的,但是吴老师仍然强烈向您推荐TechSmith出品的Camtasia,也就是人称"喀秋莎"的一款录屏神器. 文武双全--既 ...

  6. 这款录屏神器在 GitHub 火了,秒杀 33 种同类工具!

    本次推荐一个录屏神器 「Screenity」 ,在 GitHub 上非常火爆,目前已狂揽 4.1K 颗星星. 1. 功能亮点 windows 和 Mac 自带的录屏软件功能都比较有限(windows ...

  7. 用Filmage Editor制作视频,赢不限时长录屏神器永久序列码!

    十一小长假,正是外出旅游好时机!国庆七天的精彩点滴,值得我们用心记录. 只要你觉得有意义的瞬间,用视频的方式记录下来,就可以来参与Filmage Editor国庆节视频挑战赛,赢价值¥189不限录制时 ...

  8. 问题步骤记录器——Windows系统下自带的录屏神器?

    问题步骤记录器--Windows系统下自带的录屏神器? 实际上,它是一个抓屛工具, 相当于Linux系统中的捕捉.以截图的方式保存,通过幻灯片放映,达到一种录屏的效果. 什么时候用到问题步骤分析器? ...

  9. Python3,9分钟撸完一个电脑录屏神器,女神说今晚要给我加鸡腿。

    电脑录屏神器 1.引言 2.代码实战 2.1 编写思路 2.2 代码示例 3.总结 1.引言 女神:鱼哥,忙吗? 小鱼:嗯嗯, 忙, 哦不 , 不忙不忙. 女神:鱼哥,那能不能帮我个忙? 小鱼:这没问 ...

最新文章

  1. shell 命令执行结果判断语句
  2. 【剑指offer-Java版】09斐波那契数列
  3. kmeans python interation flag_Python / Scipy Integration数组
  4. android工程师 腾讯,腾讯音乐Android工程师一面面试题记录,拿走不谢!
  5. VUE的ajax拦截器
  6. 马斯克再发声,称人工智能是人类文明面临的最大风险
  7. 用C# (.NET Core) 实现抽象工厂设计模式
  8. PHP中cookie和session
  9. 无法显示隐藏文件的解决方法
  10. linux集群时间同步搭建
  11. PEPS 无钥匙进入系统低频芯片 PCF7991 介绍
  12. react引入本地mp4视频
  13. SPSS问卷信度分析
  14. 生活小妙招:办公室如何查看自己电脑已连接的无线网密码,记得收藏
  15. 中医卫统直报、重点专科、绩效考核病案首页字段汇总-标出差异
  16. 聚合支付与第四方支付平台的本质区别
  17. 招行汇钱到华美银行(1)
  18. 今年天猫双11的这些技术,可能会改变整个零售行业
  19. 法国大数据:智慧城市中的大数据
  20. 国密SM1、SM2、SM3、SM4算法资料大全

热门文章

  1. 在64位Windows的VS软件中使用C/C++调用gnuplot画图
  2. 前端如何将静态页面部署到服务器,并可以通过公网ip访问。
  3. android rtmp推流,Android使用libRtmp直播推流
  4. torch-geometric安装详细步骤
  5. div+css显示两行或三行文字
  6. Tesla M40 使用分享
  7. 仔细体验,我想从产品设计的角度分析分析微信的声音锁
  8. c语言字母数字有多少种组合,C语言------排列组合 组合情况(重复和不重复)
  9. 打开pycharm时一直更新目录 updating indecix
  10. CentOS上的硬盘分区