当前位置:网站首页>asciinema 搭配 asciicast2gif 实现高效的命令行终端录制能力

asciinema 搭配 asciicast2gif 实现高效的命令行终端录制能力

2022-06-24 15:33:00 独家雨天

官网地址 https://asciinema.org/

对于程序员来说,有些时候需要分享下代码操作:

常规的录屏软件分享痛点:

  1. 录屏软件录制的视频存储大小很大,并且操作麻烦,录制效果还容易不清晰
  2. 通常需要额外的启动一个比较大的应用,系统资源占用大

而 asciinema 软件专注于命令行终端的录制效果,简直是终端录屏神器,这次碰到感觉有种相见恨晚的感觉。

先放几张官网上的录制效果图:

具体如何的操作asciinema工具 ,就不赘述,可以参考GitHub地址说明。asciinema/asciinema: Terminal session recorder 熟悉各个命令行参数的用法。

痛点

虽然 asciinema 很棒,但是cast的格式,在编写Markdown的时候,并不是很通用。虽然官网提供了一些播放方案,但是终究不是很友好。

无奈…只能选择Gif这种,更加通用的形式。

解决方案

好在,网上已经有大神,提供了将cast这种文件格式,转换成gif的命令行工具。

asciinema/asciicast2gif: Generate GIF animations from asciicasts (asciinema recordings)

感兴趣的同学可以下载体验一番。

由于asciicast2gif 的安装依赖了不少的npm仓库,个人感觉配置起来不是特别的顺利,因此采用了易用性更高的Docker安装方式。

编写脚本实现自动化

希望能够在每次录制完终端命令后,自动的转换为gif文件。编写一个脚本,在录制之后,自动的利用asciicast2gif 工具转换成 gif 格式。

#!/bin/bash

rec_date_time=$(date +%F_%H-%M-%S)
asciinema rec ${rec_date_time}.cast
# the next line only needed when you install asciicast2gif by docker
alias asciicast2gif='docker run --rm -v $PWD:/data asciinema/asciicast2gif -S 1'
asciicast2gif -S 1 ${rec_date_time}.cast ${rec_date_time}.gif

如果再傻瓜一点,就在 ‘~/.bashrc’ 文件中,增加一个别名rec来执行上面的这个bash
脚本。比如:

alias rec='sh /opt/script/auto_rec_asciinema_to_gif.sh'

最终实现效果

只要在终端输入 rec 命令,就可以实现录屏和自动的gif图片转换能力。

在这里插入图片描述

如果觉得对你有帮助,点个赞再走呗~

原网站

版权声明
本文为[独家雨天]所创,转载请带上原文链接,感谢
https://blog.csdn.net/u013019701/article/details/103065396