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

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

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

今天,我们将看到另一个记录终端活动的工具。 打招呼 “术语图”. 顾名思义,Termtosvg 将您的终端会话记录为独立的 SVG 动画。 它是一个简单的命令行实用程序,用 Python 编程语言。 它生成可嵌入项目页面的轻量级和干净的动画。 它通过 SVG 模板支持自定义颜色主题、终端 UI 和动画控件。 它还与 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 浏览器中上述记录的输出。