Merge pull request #9956 from wxy/20180814-How-To-Record-Terminal-Sessions-As-SVG-Animations-In-Linux

PRF&PUB:20180814 How To Record Terminal Sessions As SVG Animations In Linux
This commit is contained in:
Xingyu.Wang 2018-08-26 15:43:25 +08:00 committed by GitHub
commit a8b15ce2b6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -3,12 +3,12 @@
![Banner 图](https://www.ostechnix.com/wp-content/uploads/2018/08/termtosvg-720x340.png)
录制终端会话可以满足我们不同类型的需求。通过录制终端会话,你可以完整记录你在终端中执行的操作,将其保存供后续参考。通过录制终端会话,你还可以向青少年、学生或其它打算学习 Linux 的人展示各种 Linux 命令及其用例。值得庆幸的是,市面上已经有不少工具,可以帮助我们在类 Unix 操作系统下录制终端会话。我们已经介绍过一些可以帮助你录制终端会话的工具,可以在下面的链接中找到。
录制终端会话可以满足我们不同类型的需求。通过录制终端会话,你可以完整记录你在终端中执行的操作,将其保存供后续参考。通过录制终端会话,你还可以向青少年、学生或其它打算学习 Linux 的人展示各种 Linux 命令及其用例。值得庆幸的是,市面上已经有不少工具,可以帮助我们在类 Unix 操作系统下录制终端会话。我们已经介绍过一些可以帮助你录制终端会话的工具,可以在下面的链接中找到。
+ [如何录制你在终端中的所作所为][3]
+ [Asciinema 录制终端会话并在网上分享][4]
今天,我们要介绍另一款录制终端操作的工具,名字叫做 **Termtosvg**。从名字可以看出Termtosvg 将你的终端会话录制成一个单独的 SVG 动画。它是一款简单的命令行工具,使用 **Python** 语言编写可以生成轻量级、外观整洁的动画可以嵌入到网页项目中。Termtosvg 支持自定义<ruby>色彩主题<rt>color themes</rt>、终端 UI还可以通过 [SVG 模板][1]完成动画控制。它兼容 asciinema 录制格式,支持 GNU/LinuxMac OS 和 BSD 等操作系统。
今天,我们要介绍另一款录制终端操作的工具,名字叫做 **Termtosvg**。从名字可以看出Termtosvg 将你的终端会话录制成一个单独的 SVG 动画。它是一款简单的命令行工具,使用 **Python** 语言编写可以生成轻量级、外观整洁的动画可以嵌入到网页项目中。Termtosvg 支持自定义<ruby>色彩主题<rt>color themes</rt></ruby>、终端 UI还可以通过 [SVG 模板][1]完成动画控制。它兼容 asciinema 录制格式,支持 GNU/LinuxMac OS 和 BSD 等操作系统。
### 安装 Termtosvg
@ -32,15 +32,15 @@ $ pip3 install pyte python-xlib svgwrite
### 将 Linux 终端会话录制成 SVG 动画
使用 Termtosvg 录制终端会话十分容易。打开终端窗口,运行如下命令即可开始录制:
使用 `termtosvg` 录制终端会话十分容易。打开终端窗口,运行如下命令即可开始录制:
```
$ termtosvg
```
**注意:** 如果 termtosvg 命令不可用,重启操作系统一次即可。
**注意:** 如果 `termtosvg` 命令不可用,重启操作系统一次即可。
运行 termtosvg 命令后,可以看到如下命令输出:
运行 `termtosvg` 命令后,可以看到如下命令输出:
```
Recording started, enter "exit" command or Control-D to end
@ -60,7 +60,7 @@ $ uname -a
```
操作完成后,使用组合键 **CTRL+D** 或者输入 **exit** 停止录制。录制结果将会保存在 **/tmp** 目录,(由于做了唯一性处理)文件名并不会重复。
操作完成后,使用组合键 `CTRL+D` 或者输入 `exit` 停止录制。录制结果将会保存在 `/tmp` 目录,(由于做了唯一性处理)文件名并不会重复。
![](https://www.ostechnix.com/wp-content/uploads/2018/08/Termtosvg-in-action-1-1.png)
@ -70,7 +70,7 @@ $ uname -a
$ firefox /tmp/termtosvg_ddkehjpu.svg
```
你也可以在(图形界面的)浏览器中直接打开这个 SVG 文件( **File -> <SVG 文件路径>** )。
你也可以在(图形界面的)浏览器中直接打开这个 SVG 文件( **File -> \<SVG 文件路径>** )。
我用 Firefox 浏览器打开的效果如下:
@ -78,15 +78,16 @@ $ firefox /tmp/termtosvg_ddkehjpu.svg
下面举例说明几种使用 Termtosvg 录制终端会话的方式。
我刚刚提到Termtosvg 录制终端会话后默认保存成 **/tmp** 目录下的一个 SVG 动画文件。
我刚刚提到Termtosvg 录制终端会话后默认保存成 `/tmp` 目录下的一个 SVG 动画文件。
但你可以指定 SVG 动画文件的文件名,例如 **animation.svg**;也可以指定一个存放路径,例如 **/home/sk/ostechnix/**
但你可以指定 SVG 动画文件的文件名,例如 `animation.svg`;也可以指定一个存放路径,例如 `/home/sk/ostechnix/`
```
$ termtosvg /home/sk/ostechnix/animation.svg
```
录制终端会话并使用特定模板进行渲染:
```
$ termtosvg -t ~/templates/my_template.svg
```
@ -122,7 +123,7 @@ via: https://www.ostechnix.com/how-to-record-terminal-sessions-as-svg-animations
作者:[SK][a]
选题:[lujun9972](https://github.com/lujun9972)
译者:[pinewall](https://github.com/pinewall)
校对:[校对者ID](https://github.com/校对者ID)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出