玩弄linux

linux终端录屏工具asciinema并转为gif

linux终端录屏工具asciinema并转为gif

转载:
本文链接:https://blog.csdn.net/u013019701/article/details/103065396

ubuntu/debian环境下

sudo apt-get install asciinema

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

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

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

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

而 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 格式。

docker pull asciinema/asciicast2gif
#!/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'

最终实现效果

2021-03-17_22-07-37

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

linux命令三剑客之grep,awk,sed到底有多骚?

上一篇

有效的括号

下一篇

你也可能喜欢

2 条评论

发表评论

您的电子邮件地址不会被公开。 必填项已用 * 标注

提示:点击验证后方可评论!

插入图片

个人微信公众号

we-tuiguang

qq交流群

群号:1046260719

微信扫一扫

微信扫一扫