如何在 Linux 中将终端会话记录为 SVG 动画

在某些情况下,录制终端会话可能会有所帮助。 您可以使用这些记录会话来记录您在终端中所做的所有事情并保存它们以供将来参考。 您可以使用它们向您的大三学生、学生和任何愿意学习 Linux 的人演示不同的 Linux 命令及其用例。 幸运的是,我们有许多工具可以在类 Unix 操作系统中记录终端会话。 我们已经介绍了一些可以帮助您记录过去的终端会话的工具/命令。 您可以在下面给出的链接中浏览它们。

  • 如何记录您在终端中所做的一切
  • Asciinema – 记录终端会话并在网络上分享

今天,我们将看到另一个记录终端活动的工具。 打招呼 “术语图”. 顾名思义,Termtosvg 将您的终端会话记录为独立的 SVG 动画。 它是一个简单的命令行实用程序,用 Python 编程语言。 它生成可嵌入项目页面的轻量级和干净的动画。 它通过以下方式支持自定义颜色主题、终端 UI 和动画控件 SVG 模板. 它还与 asciinema 录制格式兼容。 Termtosvg 支持 GNU/Linux、Mac OS 和 BSD 操作系统。

安装 Termtosvg

Termtosvg 可以使用 PIP 安装,PIP 是一个 python 包管理器,用于安装使用 Python 语言编写的应用程序。 如果您尚未安装 PIP,请参阅以下指南。

  • 如何使用 Pip 管理 Python 包

安装 PIP 后,运行以下命令安装 Termtosvg 工具:

$ pip3 install --user termtosvg

并且,安装以下先决条件以呈现终端屏幕。

$ pip3 install pyte python-xlib svgwrite

完毕。 让我们继续以 SVG 格式生成终端会话。

在 Linux 中将终端会话记录为 SVG 动画

使用 Termtosvg 录制终端会话非常简单。 只需打开终端窗口并运行以下命令即可开始录制。

$ termtosvg

笔记: 如果您的 termtosvg 命令不可用,请重新启动系统一次。

运行“termtosvg”命令后,您将看到以下输出:

Recording started, enter "exit" command or Control-D to end

您现在将处于一个子 shell 中,您可以在其中像往常一样执行 Linux 命令。 您在终端中所做的一切都会被记录下来。

让我运行一个随机命令。

$ mkdir mydirectory
$ cd mydirectory/
$ touch file.txt
$ cd ..
$ uname -a

完成后,按 CTRL+D 或输入 出口 停止录制。 生成的录音将保存在 /tmp 具有唯一名称的文件夹。

Termtosvg 在行动

然后,您可以从终端选择的任何 Web 浏览器中打开 SVG 文件,如下所示。

$ firefox /tmp/termtosvg_ddkehjpu.svg

您也可以直接从浏览器打开 SVG 文件(文件 -> )。

这是我上面录音的输出 Firefox 浏览器。

在浏览器中播放 SVG 文件

下面是一些关于如何使用 Termtosvg 记录终端会话的示例。

就像我已经提到的,Termtosvg 将记录一个终端会话并将其保存为 SVG 动画文件 /tmp 默认目录。

但是,您可以生成具有自定义名称的 SVG 动画,例如 example 动画.svg,并将其保存在自定义位置,对于 example /home/sk/ostechnix/.

$ termtosvg /home/sk/ostechnix/animation.svg

记录终端会话并使用特定模板呈现:

$ termtosvg -t ~/templates/my_template.svg

记录具有特定屏幕几何形状的终端会话:

$ termtosvg -g 80x24 animation.svg

以 asciicast v2 格式记录终端会话:

$ termtosvg record recording.cast

从 asciicast 格式的记录中渲染 SVG 动画:

$ termtosvg render recording.cast animation.svg

有关更多详细信息,请参阅 Termtosvg 手册.

资源:

感谢您的光临!

帮助我们帮助您:

祝你有美好的一天!!