Have you ever thought about how you can record your Linux terminal? Terminalizer is a fancy and highly customizable CLI tool that records and renders terminal activity and can make an animated GIF image from it. It can work well on Ubuntu, CentOS, Arch Linux, SUSE, RedHat, Fedora, etc. In this tutorial, we'll take you through how you can install and capture/record your Linux terminal.
Before installing terminalizer, ensure you have Node.js and npm installed.
Installing Node.js
To install Node.js, first, update your system. Here I am using Ubuntu 18.04 version.
apt update
Next, run the command below to install Node.js from the repositories
apt install node.js
Output
The following NEW packages will be installed: libc-ares2 libhttp-parser2.7.1 libuv1 nodejs nodejs-doc 0 upgraded, 5 newly installed, 0 to remove and 490 not upgraded. Need to get 5,671 kB of archives. After this operation, 24.8 MB of additional disk space will be used. Do you want to continue? [Y/n] Y
Upon successful installation of node.js, you can verify the version of Node.js using the command as shown
nodejs --version
Output
v8.10.0
Finally, we'll install npm which is the package manager for Node.js
apt install npm
To verify npm's version run
npm --version
Output
3.5.2
Installing terminalizer
To install terminalizer , run
npm install -g terminalizer
Sample Output
> node-pty-prebuilt@0.7.3 install /usr/local/lib/node_modules/terminalizer/node_modules/node-pty-prebuilt > prebuild-install || node scripts/install.js
installation of terminalizer should work well with Node.js version 9 and below. If you are running a newer version and the installation fails, you may be required to install the development tools to build the C++ add-ons. To achieve this run,
apt install build-essential
To verify installation of development tools run
gcc -v
Output
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-16ubuntu3' --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 --with-as=/usr/bin/x86_64-linux-gnu-as --with-ld=/usr/bin/x86_64-linux-gnu-ld --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-16ubuntu3)
make -v
Output
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.
Using Terminalizer
To get started with terminalizer , we'll first generate a demo file in the current directory
terminalizer record demo
Output
The recording session is started
Press CTRL+D to exit and save the recording
At this point, run a few commands on your terminal and exit by pressing CTRL + D. This will save your recording as a YAML file, in this case, demo.yml
The recording data is saved into the file:
/root/demo.yml
You can edit the file and even change the configurations.
To Play the recording, run
terminalizer play demo
This will play a recording displaying a history of the last few commands that you've just run
Read Also:
- Termtosvg - A Tool to Record Terminal Session in Linux
- Tlog - A Tool to Record / Play Terminal IO and Sessions
- 8 Popular and Lesser Know Linux Terminal Recording Tools
- How To Record and Share Linux Terminal Activity using Asciinema
- How to Use "Script" Command To Record Linux Terminal Session
As already seen from the examples above, terminalizer is a handy tool to use to make a recording of your terminal. Feel free to give it a try and stay tuned for more of these informative articles!
Resource Reference:
Github - terminalizer