如何使用 VHS 创建更好的 Linux 终端 GIF
Linux 终端是一个很好的工具,可以帮助您充分利用机器。大多数人都是通过各种指导教程来学习使用它的。但更好的方法可能是看看它的实际应用。
VHS 是一种创建 Linux 终端 GIF 动图 的更简单的方法。
终端是特别有趣的。其中包括文本行、输入和输出、状态,以及偶尔出现的 ASCII 图像。但对于 Linux 新手来说,很难将原因与结果联系起来。
视频和 GIF 通常对 Linux 爱好者会有所帮助,这可能就是为什么有数以万计的 Linux 视频教程。这些通常是通过屏幕录制,或者用手机在监视器前拍摄的。
但视频文件通常高达数百 MB,如果要为多人服务,则需要大量资源。如果你不想依靠视频网站来控制对内容的访问,它们是浪费的,也不是理想的。
虽然在 Linux PC 上可以将视频文件转换为 GIF,但解决方案通常不美观,而且文件很大。
VHS 是一个命令行实用程序,可帮助您从文本文件中包含的一组命令创建 GIF。
命令一个接一个地按顺序执行,输出记录在文件中。您还可以指定可读性的字体大小,以及终端窗口的尺寸。
如何在 Linux 上安装 VHS
VHS 需要 ttyd 和 ffmpeg 才能运行。如果系统支持 snap,请使用以下命令安装 ttyd:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
sudo snap install ttyd --classic
ffmpeg包可以在默认存储库中获得。
现在你已经准备好安装 VHS 了。
在基于 Debian 发行版
将 repo 密钥添加到您的密匙环:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
curl -fsSL https://repo.charm.sh/apt/gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/charm.gpg
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
echo "deb [signed-by=/etc/apt/keyrings/charm.gpg] https://repo.charm.sh/apt/ " | sudo tee /etc/apt/sources.list.d/charm.list
使用APT更新包源,然后安装VHS:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
sudo apt update && sudo apt install vhs
在Arch Linux上
您可以使用 yay 从 Arch User Repository 安装 VHS:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
yay -S vhs-bin
在 Fedora 和 Red Hat Enterprise Linux 上
在终端中复制并粘贴下面的整个命令段,然后按回车键:
echo '[charm]
name=Charm
baseurl=https://repo.charm.sh/yum/
enabled=1
gpgcheck=1
gpgkey=https://repo.charm.sh/yum/gpg.key' | sudo tee /etc/yum.repos.d/charm.repo
然后,键入以下内容安装VHS:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
sudo yum install vhs
使用 VHS 创建终端的 GIF
VHS使用自定义的“.tape”扩展名。要开始,请键入以下内容创建一个新的:
vhs new linuxmi.tape
现在使用nano打开和编辑 tape:
nano linuxmi.tape
在该文件中,您将发现作为注释的有用配置选项。这包括输出格式:是的,您可以将输出保存为 MP4 或 WebM,尽管在我们看来,这与我们的要求有点相悖。您还将看到微调字体和设置字符出现在屏幕上的延迟时间的选项。
您可能会发现两个特别有用的命令是“隐藏 Hide”和“显示 Show”。正如它们的名字所暗示的那样,它们要么隐藏后续命令,使其不会出现在终端中,要么显示它们。
设置输出文件名和终端尺寸后,命令将按顺序执行。
要模拟向终端输入单词,请在所需的字符串前加上命令 Type,然后在后面加上引号。例如,如果你想让字符串“Welcom To www.linuxmi.com”看起来像是键盘后面的用户敲出的,输入:
Type echo "Welcom To www.linuxmi.com"
在你的字符串后面输入命令Enter来模拟点击Return,你会看到:
echo Welcom To www.linuxmi.com
Linux echo命令将执行,你将看到终端输出:
Welcom To www.linuxmi.com
要模拟一行文本之后的 200ms 间隙中断,可以使用 Sleep 命令。例如:
Sleep 200ms
...将导致在下一行开始输入前暂停200毫秒。
Type 命令将执行实际的命令,并将其输出捕获到 GIF 中。
为了模拟运行如上所述的定制的 Neofetch 命令,我们的 tape 文件包含以下内容:
Output demo.gif
Set FontSize 15
Set Width 1200
Set Height 600
Type "neofetch --ascii linuxmi.txt"
Sleep 500ms
Enter
Sleep 5s
当您对这些命令感到满意时,使用Ctrl + O和Ctrl + X保存文件,然后将文件输入到 VHS 中。
vhs < linuxmi.tape
VHS会将 tape 渲染成GIF。如下图:
创造终端 GIF 动图的乐趣和好处!
用 VHS 制作终端输入和输出的动图很简单,也很酷,这是演示命令及其结果的极好方法。当编写教程时,它有极好的潜力作为视觉资源。
在您开始创建自己的 Linux 教程网站之前,请确保您是一名专家,并且掌握了最新的最有用的现代 Linux 命令。