asciinema
是一个开源的命令行工具,用于记录和分享终端会话。它不仅可以记录用户在终端中的操作,还可以生成可嵌入的播放链接,方便分享和展示。本文将详细介绍 asciinema
命令的安装、基本用法和高级用法,并通过具体示例帮助你快速上手。
🧑 博主简介:现任阿里巴巴嵌入式技术专家,15年工作经验,深耕嵌入式+人工智能领域,精通嵌入式领域开发、技术管理、简历招聘面试。CSDN优质创作者,提供产品测评、学习辅导、简历面试辅导、毕设辅导、项目开发、C/C++/Java/Python/Linux/AI等方面的服务,如有需要请站内私信或者联系任意文章底部的的VX名片(ID:
gylzbk
)
💬 博主粉丝群介绍:① 群内初中生、高中生、本科生、研究生、博士生遍布,可互相学习,交流困惑。② 热榜top10的常客也在群里,也有数不清的万粉大佬,可以交流写作技巧,上榜经验,涨粉秘籍。③ 群内也有职场精英,大厂大佬,可交流技术、面试、找工作的经验。④ 进群免费赠送写作秘籍一份,助你由写作小白晋升为创作大佬。⑤ 进群赠送CSDN评论防封脚本,送真活跃粉丝,助你提升文章热度。有兴趣的加文末联系方式,备注自己的CSDN昵称,拉你进群,互相学习共同进步。
【Linux】终端录屏神器asciinema:用于记录和分享终端会话操作,支持转换为gif动态图片格式,支持生成可嵌入的播放链接用于分享和展示
一、asciinema
命令概述
1. 功能描述
asciinema
可以记录终端会话,并生成可嵌入的播放链接。用户可以在网页上回放这些会话,方便分享和展示终端操作。
2. 基本语法
asciinema [command] [options]
常用命令包括 rec
(记录)、play
(播放)和 upload
(上传)。
二、安装 asciinema
asciinema
可以在多个操作系统上安装,以下是一些常见的安装方法:
1. 在 Debian/Ubuntu 上安装
sudo apt-get update
sudo apt-get install asciinema
2. 在 CentOS/RHEL 上安装
使用 EPEL
仓库安装:
sudo yum install epel-release
sudo yum install asciinema
3. 在 Fedora 上安装
sudo dnf install asciinema
4. 在 macOS 上安装
使用 Homebrew 安装:
brew install asciinema
5. 使用 pip 安装
如果你使用 Python,可以通过 pip
安装:
pip install asciinema
三、asciinema
命令的基本用法
1. 记录终端会话
使用 asciinema rec
命令开始记录终端会话:
asciinema rec [filename]
如果不指定 filename
,会话将上传到 asciinema.org 并生成一个分享链接。
示例
asciinema rec my_session.cast
2. 播放终端会话
使用 asciinema play
命令播放记录的终端会话:
asciinema play [filename]
示例
asciinema play my_session.cast
3. 上传终端会话
使用 asciinema upload
命令上传记录的终端会话并生成分享链接:
asciinema upload [filename]
示例
asciinema upload my_session.cast
4. 直接录制并上传到asciinema.org
如下图所示,也可以直接使用 asciinema rec
命令开始记录终端会话并默认上传到asciinema.org生成一个分享链接。:
asciinema rec
这是我上述安装配置fzf命令的过程,录屏生成的分享地址:https://asciinema.org/a/r1SXlfbURXqRQF9nDCeFszFdW
5. 录屏转gif动画
可以点击右下角的Download按钮,选择.gif
,即可弹窗提示我们转换gif的方法。
下载agg命令
agg命令可以到https://github.com/asciinema/agg/releases/tag/v1.4.3进行下载。
如果因网络问题导致无法访问,可关注公众号:Alex技术圈
或者AlexTechVision
,然后回复:agg
进行免费下载。
转换gif
通过asciinema的agg工具,将分享链接或者录屏文件都可以作为输入文件,就可以得到gif产物了。
agg https://asciinema.org/a/r1SXlfbURXqRQF9nDCeFszFdW demo.gif
或者
agg demo.cast demo.gif
如下所示,是我转换得到的gif文件:
四、常见选项
1. 指定标题和描述
使用 --title
和 --description
选项可以为会话指定标题和描述:
asciinema rec --title "My Session" --description "This is a demo session" my_session.cast
2. 录制环境变量
使用 --env
选项可以录制特定的环境变量:
asciinema rec --env PATH my_session.cast
3. 录制时长
使用 --max-wait
选项可以设置录制的最大等待时间(秒):
asciinema rec --max-wait 2 my_session.cast
4. 录制输入隐藏
使用 --stdin
选项可以录制标准输入,但不显示在终端中:
asciinema rec --stdin my_session.cast
五、高级用法
1. 与脚本结合使用
可以将 asciinema
与脚本结合使用,录制自动化操作:
asciinema rec my_script.cast -- ./my_script.sh
示例
echo 'echo "Hello, World!"' > my_script.sh
chmod +x my_script.sh
asciinema rec my_script.cast -- ./my_script.sh
2. 嵌入播放链接
上传会话后,可以在网页中嵌入播放链接:
<iframe src="https://asciinema.org/a/your-session-id" id="asciicast-your-session-id" async></iframe>
3. 本地播放设置
可以在本地播放时设置播放速度:
asciinema play --speed 2 my_session.cast
4. 下载远程会话
可以下载远程会话文件到本地:
asciinema auth
asciinema cast download https://asciinema.org/a/your-session-id
六、示例场景
1. 记录安装过程
通过 asciinema
记录软件安装过程,生成可分享的播放链接:
asciinema rec install_process.cast
sudo apt-get update
sudo apt-get install some_software
exit
2. 记录故障排查过程
通过 asciinema
记录故障排除过程,方便分享和展示:
asciinema rec troubleshooting.cast
dmesg
systemctl status some_service
exit
3. 记录教程演示
通过 asciinema
记录教程演示,生成可嵌入的播放链接:
asciinema rec tutorial.cast
echo "Welcome to the tutorial"
exit
4. 记录代码演示
通过 asciinema
记录代码演示,方便分享和展示:
asciinema rec code_demo.cast
vim hello_world.py
python hello_world.py
exit
七、总结
asciinema
是一个强大的命令行工具,能够记录和分享终端会话。通过本文的介绍和具体示例,希望能够帮助你熟练掌握 asciinema
命令的基本用法和一些高级功能,为你的终端操作和分享提供有力支持。