Запись сессий терминала с помощью Terminalizer в Ubuntu 18.04

Terminalizer – это приложение для записи сессий терминала, что позволяет вам записывать действия в терминале в режиме реального времени, а затем воспроизводить их. Terminalizer работает так же, как устройства записи экрана, только он работает в вашем терминале.

Запись сессии терминала позволяет вам снова просмотреть конкретное действие или помочь отладить особенно сложную ошибку. Записи, сделанные с помощью Terminalizer, также можно экспортировать в виде анимированных GIF-файлов, которыми удобно поделиться в Интернете. Также такие файлы можно без проблем добавить в справочные материалы вашего программного обеспечения.

В этом мануале вы научитесь устанавливать Terminalizer, использовать его для записи и воспроизведения сессий терминала, настраивать процесс записи, а также экспортировать полученные файлы и делиться ими с другими пользователями в Интернете.

Требования

Выполнив предварительные требования, войдите на сервер как пользователь с доступом к sudo, чтобы начать работу.

1: Установка Terminalizer

Сейчас мы загрузим и установим Terminalizer. Инструмент Terminalizer написан на Node.js и его можно установить с помощью менеджера пакетов npm.

Чтобы установить Terminalizer глобально в вашей системе, выполните следующую команду:

sudo npm install --global --allow-root --unsafe-perm=true terminalizer

Terminalizer использует платформу приложений Electron, чтобы экспортировать записанные сессии терминала в формат GIF. Аргумент —unsafe-perms=true необходим для глобальной установки Electron в вашей системе.

После установки Terminalizer вы увидите примерно такой вывод:

. . .
/usr/local/lib
└── terminalizer@0.7.1

Затем проверьте вашу установку Terminalizer, запросив ее версию:

terminalizer --version

Эта команда покажет версию на экране:

0.7.1

Теперь создайте конфигурационный файл Terminalizer по умолчанию, который вы сможете использовать для расширенной настройки приложения (подробнее об этом поговорим в разделе 4):

terminalizer init

Это вернет такой вывод:

The global config directory is created at
/home/user/.terminalizer

Итак, вы успешно установили Terminalizer, и теперь вы можете создать свою первую запись сессии терминала.

2: Запись и воспроизведение сессии терминала

Давайте попробуем записать и воспроизвести вашу сессию.

Для начала создайте новую запись Terminalizer, указав любое имя на ваш выбор.

terminalizer record your-recording

Эта команда выведет следующее сообщение, чтобы указать, что запись началась:

The recording session has started
Press Ctrl+D to exit and save the recording

Теперь вы можете делать в вашем терминале все, что хотите. Каждое нажатие клавиши, каждая команда сейчас записываются в режиме реального времени.

Например, вы можете выполнить эти команды:

pwd
date
whoami
echo "Hello, world!"

Если вы хотите остановить запись, нажмите CTRL+D. Затем Terminalizer сохранит запись в указанном файле в формате YAML (например, your-recording.yml).

Successfully Recorded
The recording data is saved into the file:
/home/user/your-recording.yml

Terminalizer может предложить вам поделиться вашей записью в Интернете. Просто нажмите CTRL+C, чтобы пока отменить это действие, так мы сначала попробуем воспроизвести запись локально.

Воспроизведите записанную сессию терминала с помощью следующей команды:

terminalizer play your-recording

Команда воспроизведет запись в режиме реального времени в вашем терминале:

user@server:~$ pwd
/home/user
user@server:~$ date
Sun Mar  8 14:55:36 UTC 2020
user@server:~$ whoami
user
user@server:~$ echo "Hello, world!"
Hello, world!
user@server:~$ logout

Вы также можете отрегулировать скорость воспроизведения вашей записи, используя параметр —speed-factor.

Например, следующая команда воспроизведет запись в два раза медленнее (на половинной скорости):

terminalizer play your-recording --speed-factor 2

Также вы можете воспроизвести свою запись в два раза быстрее (на удвоенной скорости):

terminalizer play your-recording --speed-factor 0.5

Вы записали и воспроизвели свою сессию. Теперь вы можете поделиться этой записью онлайн.

3: Публикация записи сессии терминала

На этом этапе мы поделимся своей записью сессии на странице Terminalizer Explore.

Для начала выберите запись, которой вы хотите поделиться.

terminalizer share your-recording

Затем вам будет предложено предоставить основные метаданные о вашей записи (заголовок и описание):

Please enter some details about your recording
? Title Title of Your Recording
? Description Description of Your Recording
? Tags such as git,bash,game Comma-separated Tags for Your Recording

Важно! По умолчанию записи Terminalizer являются публичными. Прежде чем выкладывать запись в общий доступ, убедитесь, что в ней нет конфиденциальной информации или других данных, которыми вы не хотите делиться.

Если вы впервые делитесь записью своей сессии с помощью Terminalizer, вам необходимо сослаться на свою учетную запись. Terminalizer отобразит ссылку для подтверждения.

Open the following link in your browser and login into your account
https://terminalizer.com/token?token=your-token
When you do it, press any key to continue

Важно! Убедитесь, что ваш токен Terminalizer хранится в секрете – любой кто, кто завладеет им, сможет получить доступ к вашей учетной записи.

Перейдя по ссылке в веб-браузере и войдя в свою учетную запись Terminalizer, нажмите любую клавишу, чтобы продолжить.

После этого Terminalizer загрузит вашу запись и предоставит вам ссылку для ее просмотра:

Successfully Uploaded
The recording is available on the link:
https://terminalizer.com/view/your-recording-id

Посетите ссылку в браузере локальной машины, чтобы просмотреть вашу запись.

Вы опубликовали записанную сессию терминала на веб-сайте Terminalizer и просмотрели его в своем веб-браузере. что дальше?

4: Продвинутые настройки Terminalizer

Теперь, когда вы немного познакомились с общими функциями Terminalizer, вы можете рассмотреть более сложные параметры настройки этого инструмента (например, настройки цветов и стиля отображения).

Каждая запись наследует конфигурацию по умолчанию из глобального конфигурационного файла Terminalizer, который находится в ~/.terminalizer/config.yml. Вы можете изменить конфигурацию для отдельных записей, отредактировав файл этой записи (например, your-recording.yml). Кроме того, вы можете отредактировать глобальную конфигурацию, что будет влиять на все новые записи.

Давайте для примера попробуем отредактировать глобальный конфигурационный файл (эти же действия применимы и к конфигурационным файлам отдельных записей).

Откройте глобальный конфигурационный файл Terminalizer в текстовом редакторе, например в nano:

nano ~/.terminalizer/config.yml

Все параметры конфигурации в этом файле имеют комментарий, который объясняет, что они делают.

Есть несколько общих параметров, которые вы можете настроить по своему усмотрению:

  • cols: явно устанавливает количество столбцов терминала для вашей записи.
  • rows: явно задает количество строк терминала для вашей записи.
  • frameDelay: переопределяет задержку между каждым нажатием клавиши во время воспроизведения.
  • maxIdleTime: задает максимальное время между нажатиями клавиш во время воспроизведения.
  • cursorStyle: определяет стиль курсора терминала по умолчанию вне block, bar и underline.
  • fontFamily: список предпочитаемых шрифтов для воспроизведения (в порядке предпочтения).
  • theme: настройка цветовой схемы воспроизведения (например, здесь можно создать черно-белый терминал и т. д).

К примеру, чтобы сделать фон терминала белым, используйте следующие параметры:

. . .
theme:
background: "white"
foreground: "black"
. . .

Вы можете настроить стиль курсора, что облегчит восприятие записи вашей сессии. Например, вы можете поменять стандартный курсор на блочный или на подчеркнутый:

. . .
cursorStyle: underline
. . .

После внесения всех необходимых изменений сохраните файл и вернитесь в свой терминал.

Если вы отредактировали глобальную конфигурацию Terminalizer, эти настройки будут применяться ко всем новым записям сессий. Если же вы отредактируете конфигурацию конкретной записи, Terminalizer немедленно применяет изменения именно к этой записи.

Обратите внимание, пользовательский стиль воспроизведения применяется только к записям сессий, которые вы выложили в общий доступ. При воспроизведении записей непосредственно в вашем терминале Terminalizer всегда использует стиль и цветовую схему вашего терминала.

Заключение

Теперь вы умеете создавать записи своих сессий терминала и выкладывать их в общий доступ с помощью Terminalizer. Этот инструмент позволяет вам создавать простые демо-записи, которые можно использовать в документации или в мануалах для вашего программного обеспечения. Также вы теперь можете легко делиться полезными советами по работе с командной строкой, просто записав свои действия в терминале.

Если вы хотите научиться экспортировать свои записи Terminalizer в формат GIF, установите Terminalizer на машину с графическим интерфейсом и используйте встроенную функцию преобразования. Подробные инструкции вы найдете здесь.

На этой странице сайта Terminalizer вы найдете множество опубликованных записей сессий.

Tags: , , , ,