录制Linux终端会话并生成GIF图像

时间:2020-02-23 14:33:05  来源:igfitidea点击:

终端器是一个命令行工具,可以帮助录制Linux终端并生成动画GIF图像。
在本文中,我们将学习如何安装和使用终端器来在Linux上生成动画GIF。

如何在Linux上安装终端器

要安装终端器,请按照以下步骤操作。

步骤1.安装node.js

使用下面的教程在Linux系统上安装。
选择使用LTS或者最新版本。

如何在Linux中安装Node.js版本

第2步:安装终端器的构建工具

定位器使用一些 C++需要建造的附件。
在开始安装和使用终端器之前,需要安装这一点。

对于CentOS和其他Rhel衍生物;

sudo yum install -y gcc-c++ make

对于Ubuntu和其他Debian衍生品;

sudo apt-get -y install build-essential

对于Arch Linux/Manjaro:

sudo pacman -S gcc make cmake

我们可以确认使用的软件包版本 gcc -vmake -v

$gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 7.3.0-27ubuntu1~18.04' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/--enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 7.3.0 (Ubuntu 7.3.0-27ubuntu1~18.04) 
$make -v
GNU Make 4.1
Built for x86_64-pc-linux-gnu
Copyright (C) 1988-2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

步骤3.在Linux上安装终端器

一旦安装了所有依赖项,继续在Ubuntu/CentOS和Arch Linux系统上安装终端器 npm包管理器。

建议首次安装 node-gyp使用NPM来避免稍后的问题。

$npm install -g node-gyp
/home/jmutai/.nvm/versions/node/v10.15.3/bin/node-gyp -> /home/jmutai/.nvm/versions/node/v10.15.3/lib/node_modules/node-gyp/bin/node-gyp.js
+ Hyman@theitroad
added 100 packages from 67 contributors in 6.463s

现在安装终端器:

$npm install terminalizer

使用终端器

要开始录制终端会话,只需输入:

$terminalizer record <session-name>

例子:

$terminalizer record  test-demo
defaultConfigPath
The recording session is started
Press CTRL+D to exit and save the recording

对于NVM安装,终端器二进制文件将位于:

~/node_modules/.bin/terminalizer

录制将从后台启动和一个名为的文件 test-demo.yml在当前目录中创建。

我们可以使用任何编辑器打开它来编辑配置和录制的帧。
使用该录制录制 terminalizer play命令。

$terminalizer play test-demo

完成后,我们可以将录制渲染为动画GIF render命令:

$terminalizer render test-demo
Rendering frame 24/24 100% [==============================] 0.0s
Merging frame 24/24 100% [==============================] 0.0s
Successfully Rendered
The animated GIF image is saved into the file:
/home/jmutai/render1532867073991.gif

为录制文件生成Web播放器

$terminalizer generate &lt;recordingFile&gt;

上传录制文件并获取在线播放器的链接

$terminalizer share &lt;recordingFile&gt;

默认值 config.yml file存储在项目的根目录中。
执行以下命令将其复制到当前目录。

使用任何编辑器编辑复制的Config.yml,然后使用-c选项覆盖默认值。

$terminalizer config