Rate this post

В данной статья расскажу как записать и воспроизвести список команд введенных на протяжении работы с терминальной сессией.nnКоманда history сохраняет историю введеных в сессии команд, но она не сохраняет вывод этих команд. Команда script позволит сохранить всю введенную и полученную информацию в терминале в лог файл.nnС помощью команды scriptreplay можно воспроизвести записанные команды.n

Как записать команды используя script

Синтаксис командыn

script [options] - -timing=timing_file log_filename

Для запуска записи команд используйтеn

script history_log.txtnnScript started, file is history_log.txt

Что бы остановить записть введите exit нажмите Entern

exitnnScript done, file is history_log.txt

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

ls -l typescriptn--------- 1 ubuntu ubuntu 144 Sep 15 00:00 typescriptnscriptnscript: open failed: typescript: Permission deniednTerminated

Запишем несколько командn

script script.logncalnn   September 2015     nSu Mo Tu We Th Fr Sa  n       1  2  3  4  5  n 6  7  8  9 10 11 12  n13 14 15 16 17 18 19  n20 21 22 23 24 25 26  n27 28 29 30           nn wnn 14:49:40 up  4:06,  2 users,  load average: 1.37, 1.56, 1.62nUSER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHATntecmint  tty8     :0               10:45    4:06m  7:40   0.36s x-session-managerntecmint  pts/5    :0               13:42    4.00s  0.07s  0.00s script script.lognn $ uptimenn 14:49:43 up  4:06,  2 users,  load average: 1.37, 1.56, 1.62nnexitnScript done, file is script.log

Теперь просмотрим результат записиn

cat script.logncal^Mn   September 2015     ^MnSu Mo Tu We Th Fr Sa  ^Mn       1  2  3  4  5  ^Mn 6  7  8  9 10 11 12  ^Mn13 14 15 ^[[7m16^[[27m 17 18 19  ^Mn20 21 22 23 24 25 26  ^Mn27 28 29 30           ^Mn                      ^Mnw^Mn 14:49:40 up  4:06,  2 users,  load average: 1.37, 1.56, 1.62^MnUSER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT^Mntecmint  tty8     :0               10:45    4:06m  7:40   0.36s x-session-manager^Mntecmint  pts/5    :0               13:42    4.00s  0.07s  0.00s script script.log^Mnuptime^Mn 14:49:43 up  4:06,  2 users,  load average: 1.37, 1.56, 1.62^M

Check-Last-Executed-Commands