嗯,以后写教程就用它了!

2022-05-26 14:36:42 浏览数 (1)

作者:陌溪

陌溪的学习笔记:http://note.moguit.cn

大家好,我是 陌溪

之前在写蘑菇博客部署教程的时候,一般都是通过文档的形式来记录的具体的操作过程。

很多时候文档并不能较好的记录我们每一步操作流程,所以为了更加直观的展示,一般会使用视频来进行记录。

但是,如果使用视频记录的话,需要小伙伴暂停视频,然后跟着视频敲代码,有的时候敲错了也会导致运行不了,显然这个方法也不是特别友好(竟然要小伙伴手动敲代码,而不是 copy

陌溪在网上冲浪的时候,发现了一款基于文本的终端录制工具:Asciinema ,它是基于文本的终端录制方法,能够拥有像看视频一样的体验,同时支持终端内容的复制。

Asciinema官网

介绍

来自官网的话:以正确的方式记录并分享您的终端会话,忘记屏幕录音应用程序和模糊的视频吧。享受一种轻量级的、纯粹基于文本的终端录制方法。

AsciinemaLinux 系统下一款"高级"终端会话记录和回放的神器, 它是一个在终端下非常棒的录制分享软件,基于文本的录屏工具,对终端输入输出进行捕捉, 然后以文本的形式来记录和回放!这使其拥有非常炫酷的特性:在播放过程中随时可以暂停, 然后对"播放器"中的文本进行复制或者其它操作!并且它支持各个操作系统(除了 Windows 之外)

Asciinema官网:https://asciinema.org/

安装

目前 Asciinema 支持:linuxmacOS

下面我将以 Linux 为例,讲解 Asciinema 的具体使用,下面将介绍多个安装的方式

ubuntu安装

ubuntu 系统使用的是 apt 作为包管理工具

代码语言:javascript复制
sudo apt-add-repository ppa:zanchey/asciinema
sudo apt-get update
sudo apt-get install asciinema

CentOS安装

CentOS 系统使用的是 yum 作为包管理工具,下载过程如下

代码语言:javascript复制
sudo yum install asciinema

Docker安装

同时也支持使用 Docker 安装

代码语言:javascript复制
docker run --rm -ti -v "$HOME/.config/asciinema":/root/.config/asciinema asciinema/asciinema

快速开始

下面我们就可以开始进行脚本的录制了

代码语言:javascript复制
# 将终端记录到本地文件
asciinema rec demo.cast

# 开始一系列的录制操作
....

# 退出
eixt

# 播放录制的终端命令
asciinema play demo.cast

上传到Asciinema官网

但是只是在终端上查看,还是不能分享给其它的小伙伴们,所以我们需要将我们录制的内容上传 Asciinema 官网,首先需要注册账号

https://asciinema.org

登录

我第一打开这个页面,没有找到注册的地方??,根据边上的英语提示,告诉我们第一次过来的话,只需要输入你的邮箱,然后系统就会向该邮箱输入一串验证信息,然后点击该链接即可完成注册~

注册

以后登录的话,操作也是一样的,输入邮箱号码,然后到邮箱的邮件点击登录即可

登录

我们需要在我们终端输入下面的命令,给我们账号进行绑定

代码语言:javascript复制
asciinema auth

然后会得到一个地址

绑定

我们把地址复制到浏览器上打开即可

完成绑定

绑定账号完成后,下面我们可以按照操作开始录制终端命令,点击开始录制后,你在终端的所有操作都会被记录下来

代码语言:javascript复制
# 开始录制
asciinema rec
# 退出录制【按下回车上传】
exit

录制成功地址

下面访问这个地址,即可看到我们的内容了

代码语言:javascript复制
https://asciinema.org/a/7IvnEDLigSVLr0So5lGyNtT7V

因为公众号无法直接打开看效果,下面陌溪录制了一段视频,一起体验一下

Asciinema常见命令

下面看看 Asciinema 的常见命令

代码语言:javascript复制
# 登录【得到url,到浏览器打开即可,需要提前在浏览器登录Asciinema】
asciinema auth

# 记录终端并将其上传到asciinema.org【】
asciinema rec  

# 将终端记录到本地文件
asciinema rec mogu.cast

# 将终端记录到本地文件,将空闲时间限制到最大2秒
asciinema play -i 2 mogu.cast

# 以两倍速播放
asciinema play -s 2 mogu.cast

# 从本地文件重放终端记录
asciinema play demo.cast

# 打印记录的会话的全部输出
asciinema cat demo.cast

# 将本地文件上传
asciinema upload mogu.cast

修改配置

同时我们在录制脚本的时候,也可以修改 asciinema 的配置

代码语言:javascript复制
vim ~/.config/asciinema/config

在这里可以配置录制播放速度,以及空闲时间

代码语言:javascript复制
[api]
; API server URL, default: https://asciinema.org
; If you run your own instance of asciinema-server then set its address here
; It can also be overriden by setting ASCIINEMA_API_URL environment variable
url = https://asciinema.example.com

[record]

; Command to record, default: $SHELL
command = /bin/bash -l

; Enable stdin (keyboard) recording, default: no
stdin = yes

; List of environment variables to capture, default: SHELL,TERM
env = SHELL,TERM,USER

; Limit recorded terminal inactivity to max n seconds, default: off
idle_time_limit = 2

; Answer "yes" to all interactive prompts, default: no
yes = true

; Be quiet, suppress all notices/warnings, default: no
quiet = true

[play]

; Playback speed (can be fractional), default: 1
speed = 2

; Limit replayed terminal inactivity to max n seconds, default: off
idle_time_limit = 1

配置完成后,我们就可以来进行录制了~

好了,本期的软件安利就到这里了

我是陌溪,我们下期再见~

博主就职于字节跳动商业化部门,一直维护校招笔记仓库 LearningNote「在Gitee上已有 5k star,地址 https://gitee.com/moxi159753/LearningNotes」,公众号上的文章也会在此同步更新,欢迎各位小伙伴一起交流学习

同时,想要丰富项目经验的小伙伴,可以参考我维护的开源微服务博客项目:蘑菇博客「 Gitee 官方推荐项目,博客类搜索排名第一,在 Gitee 已有 4.7K star,仓库地址:https://gitee.com/moxi159753/mogu_blog_v2 」。

0 人点赞