Обзор
script записывает все действия, выполняемые в терминале, в текстовый файл. Это может быть полезно для обучения, устранения неполадок или аудита. Записанные сеансы можно воспроизвести с помощью команды scriptreplay.
Основные возможности
- Запись всего ввода/вывода сеанса терминала
- По умолчанию сохраняется в файл 'typescript'
- Возможность добавления содержимого в существующий файл
- Возможность записи только результатов выполнения определенных команд
- Поддержка записи и воспроизведения информации о времени сеанса
Основные опции
Основные опции команды script влияют на способ записи, управление выходными файлами и запись информации о сеансе.
Запись и управление файлами
Сгенерированная команда:
Комбинируйте команды.
Описание:
`script` Запускает команду.
Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.
Примеры использования
Изучите различные примеры использования команды script, чтобы узнать, как эффективно записывать сеансы терминала.
Базовое использование (начало и завершение записи)
script
# Теперь все вводимые команды и вывод будут записываться.
ls -l
pwd
exit
При запуске script начинается запись всего ввода/вывода текущего сеанса в файл 'typescript'. Для завершения записи введите 'exit'.
Запись сеанса в определенный файл
script my_session.log
# Запись сеанса...
exit
Записывает сеанс в файл с желаемым именем вместо стандартного файла 'typescript'.
Добавление сеанса в существующий файл
script -a my_session.log
# Дополнительная запись сеанса...
exit
Добавляет содержимое нового сеанса в уже существующий файл записи, не перезаписывая его.
Запись только определенной команды
script -c "ls -la /tmp" ls_tmp.log
Не запускает интерактивную оболочку, а записывает только результат выполнения указанной команды и немедленно завершается.
Запись с информацией о времени
script -t 20231027_timing.log my_session_with_timing.log
# Запись сеанса...
exit
Записывает информацию о времени каждого вывода вместе с содержимым сеанса в отдельный файл. Оба файла используются для воспроизведения сеанса с помощью scriptreplay.
Советы и предостережения
Советы и предостережения для более эффективного использования команды script и подготовки к возможным проблемам.
Просмотр записанных сеансов
Файлы 'typescript', содержащие записи, являются обычными текстовыми файлами, поэтому их содержимое можно просмотреть с помощью команд `cat`, `less`, `more` и т. д. Однако, поскольку они могут содержать специальные символы или управляющие коды, команды `less -R` или `cat -v` могут быть более полезными.
- Просмотр файла по умолчанию: `cat typescript`
- Просмотр конкретного файла: `less my_session.log`
Воспроизведение сеанса (scriptreplay)
Если вы записали информацию о времени с помощью опции `-t`, вы можете воспроизвести записанный сеанс в реальном терминале, используя команду `scriptreplay`. Это очень полезно для демонстраций или обучения.
- Команда воспроизведения: `scriptreplay 20231027_timing.log my_session_with_timing.log`
Безопасность и конфиденциальность
script записывает все введенные данные, поэтому пароли или конфиденциальная информация могут быть сохранены в файле в открытом виде. Убедитесь, что права доступа к записанным файлам установлены соответствующим образом, и будьте осторожны при выполнении конфиденциальных операций.
- Внимание: Будьте осторожны, так как могут быть записаны пароли, API-ключи и другая конфиденциальная информация.
- Рекомендация: Установите права доступа к файлам записи, например, `chmod 600`, для защиты.
Предостережение при прерывании записи
Если сеанс script прерывается некорректно (например, при многократном нажатии Ctrl+C, что приводит к завершению самого процесса script) или происходит сбой питания, файл записи может быть поврежден или сохранен не полностью. Всегда рекомендуется корректно завершать сеанс командой `exit`.