Возможность записывать сеансы терминала Linux — одна из замечательных возможностей среды операционной системы Linux. Возникает, конечно, вопрос: а зачем? Ну предположим, вы хотите помочь кому-то установить и настроить определенный пакет программного обеспечения Linux. Тут, как раз, и может понадобиться такая возможность.
Записанный сеанс терминала Linux экономит время и позволяет избежать ошибок по сравнению с телефонным или видеочатом, для которого может потребоваться слишком много снимков экрана. Кроме того, записанные сеансы терминала Linux являются идеальным справочным руководством для задач командной строки, которые нелегко запомнить.
В этой статье рассмотрим, как успешно записывать сеансы терминала Linux в любом дистрибутиве операционной системы Linux.
Знакомство с командой script в Linux.
Команда script существует в виде пакета util-linux и предоставляется архивом ядра Linux. Поэтому вам не нужно устанавливать связанный с ним пакет, поскольку он предварительно настроен во всех основных дистрибутивах Linux.
Команда script преобразует сеанс терминала в машинописный текст, синтаксис ее использования следующий:
$ script [options] [file]
Мы будем использовать две основных опции команды: -а и -т. Опция команды -a (режим добавления) позволяет команде сценария добавлять записанный сеанс терминала Linux в текстовый файл.
Опция команды -t устанавливает файл синхронизации.
Итак, если мы хотим начать сеанс записи для нашего терминала Linux с помощью команды script, окончательное представление команды будет выглядеть примерно так:
$ script --t=timing.txt -a script.txt
Файл синхронизации, заданный опцией -t команды сценария, очень понадобится нам позже при совместном использовании или воспроизведении записанного сеанса терминала.
Запись сеанса терминала Linux.
Итак, мы запустили вышеприведенную команду, и запись началась, о чем и сообщает соответствующая запись в терминале.
Как только мы запустили script, все действия Linux, связанные со средой командной строки, будут записаны. Поэтому продолжим свою деятельность в командной строке.
Например, мы можем выполнять любые действия в командной строке Linux, такие как переход к различным каталогам, просмотр файлов и т. д.
После завершения нужных действий, который вы хотели записать, завершите сеанс записи терминала, нажав комбинацию клавиш [Ctrl]+[d]. Вы должны увидеть вывод «exit», за которым следует «Script Done», что подтверждает, что сеанс терминала был успешно записан.
Воспроизведение записанного сеанса терминала Linux.
После успешной записи сеанса терминала создаются и сохраняются два файла: журнал (script.txt) и файл синхронизации (timing.txt).
Имея эти файлы, мы можем использовать команду scriptreplay для воспроизведения записанных сеансов терминала, и эта команда также является частью пакета util-linux и предустановлена в основных дистрибутивах Linux.
$ scriptreplay --timing=timing.txt script.txt
Вы также можете использовать опцию -d, чтобы ускорить воспроизведение, например, в 5 или 10 раз.
$ scriptreplay --timing=timing.txt script.txt -d 10
Вы должны получить предварительный просмотр действий, связанных с Linux, которые вы только что выполнили.
Чтобы узнать больше о параметрах, которые можно использовать с командами script и scriptreplay, можно воспользоваться руководством к ним.
$ man script
$ man scriptreplay
Заключение.
Надеюсь, статья вам понравилась, ваши комментарии и отзывы всегда приветствуются. Делитесь, пользовались ли этой командой, и в каких случаях приходилось это делать.