Как стать автором
Обновить

Консольный скринкаст

Время на прочтение 2 мин
Количество просмотров 1.5K
Оказывается, записывать сессии работы в терминале — совсем просто. Программа script, входящая в пакет util-linux-ng может записать все ваши действия в файл. В выходном файле ( по умолчанию он называется «typescript» ) сохраняется полный лог вашей работы за терминалом, включая вывод консоли. Можно использовать его в разных целях, начиная с записи студенческих лабораторных работ и заканчивая слежением за тем, кто и что делал за вашим терминалом.

Но самое интересное — возможность последующего проигрывание этого лога в реальном времени с помощью perl-скрипта под названием scriptreplay
Делается это так:

> script -t 2>replayfile
> # делаете свои дела
> Ctrl^D
> scriptreplay ./replayfile


Опция -t выводит таймлайн записи в stderr, который перенаправляется в отдельный файл, используемый scriptreplay'ем. По умолчанию scriptreplay читает файл «typescript» и проигрывается в реальном времени. Конечно, это можно изменить, указав другой файл и другую временную шкалу. Например так:

> script -t 2>replayfile my_typescript
> scriptreplay ./replayfile ./my_typescript 3


Число 3 обозназначает в данном случае то, что действия будут проигрываться в 3 раза быстрее.

Таким же образом вы можете записывать сеансы работы с участием консольных псевдографических приложений — особенно это полезно, если вы выполняете в них некие критические действия ( например работаете с утилитой разбиения дисков cfdisk ) и необходимо провести последующий разбор полетов или мастер-класс. Еще один вариант использования — создание туториалов ( отличный способ продемонстрировать всем ваше виртуозное обращение с vim'ом и mc )

P.S. Небольшая проблема: записанная в одном разрешении терминала сессия с участием псевдографики не будет корректно проигрываться на другом разрешении.
Теги:
Хабы:
+30
Комментарии 11
Комментарии Комментарии 11

Публикации

Истории

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн