Терминалы VT100 имеют относительно простой способ сохранить терминальное содержание с управляющими кодами в файл с помощью Meta-p:
XTerm.VT100.printAttributes: 2
XTerm.VT100.printerCommand: cat - > file
XTerm.VT100.translations: #override Meta <KeyPress> P: print() \n
Я озирался вполне немного и не могу найти, что решение для этого работает в Терминале GNOME по умолчанию + XTerm + Bash.
Я не хочу просто изображение с содержанием окна.
Похоже, что Терминал GNOME мог бы в конечном счете получить фиксацию для этого, но нет никакой информации, о которой версии это будет включено в, и это были почти три года начиная с последнего обновления...
К сожалению, l0b0 ответ из поля: Это не возможно.
В моем другом ответе, я перечислил, как использовать сценарий, чтобы сделать это, хотя существуют некоторые различия, как Вы отметили. Другой путь состоит в том, чтобы скомпилировать источник или использовать нестабильную версию.
Терминала Gnome версия в Полном нетерпения 3.6.1, таким образом, можно посмотреть на этот источник. В Терминале-window.c на строке 115:
/*
* We don't want to enable content saving until vte supports it async.
* So we disable this code for stable versions.
*/
#include "terminal-version.h"
#if (TERMINAL_MINOR_VERSION & 1) != 0
#define ENABLE_SAVE
#else
#undef ENABLE_SAVE
#endif
#endif
Опции:
Hope это помогает.
К сожалению, l0b0 ответ из поля: Это не возможно.
существует два способа, которыми можно попытаться исправить это путем запущения скрипта в любом случае на терминале и входа всего вывода. Откройте терминал гнома, перейдите в Редактирование -> Предпочтения Профиля , затем Заголовок вкладки и Команда и для Вашей пользовательской команды используют это:
bash -l -c 'script -q -c bash $HOME/sessionlogs/$BASHPID.sessionlog.$(date +%Y%m%d-%H%M).txt'
Удостоверяются, что 'sessionlogs' существует под $HOME.
другой путь был удален и добавлен как второй ответ по этому вопросу.
Можно выполнить оболочки через сценарий (1) для получения всего ввода и вывода терминала, сохраненного в файле, включая терминальные Escape.
Существует пакет, который это назвало экран - оконечный мультиплексор с эмуляцией терминала VT100/ANSI.
Согласно страница справочника экран на веб-сайте Руководств Ubuntu , экран утверждает, что был
полноэкранный менеджер окон, который мультиплексирует физический терминал между несколькими процессами (обычно интерактивные оболочки).Each, виртуальный терминал обеспечивает функции терминал DEC VT100 и, кроме того, несколько функций управления от ISO 6429 (ECMA 48, ANSI X3.64) и стандарты ISO 2022 (например, вставьте/удалите строку и поддержку нескольких наборов символов), оконечный мультиплексор с эмуляцией терминала VT100/ANSI'.
и при выполнении экран :
Ctrl h (бумажная копия) Запись бумажная копия текущего окна в файл "hardcopy.n".
я попробовал в Терминале GNOME, работая screen
и введя Ctrl h
, Это - вывод моего файла бумажной копии 1 при открытии в Gedit:
можно найти , экран находится в репозитории программного обеспечения полном нетерпения/основном Ubuntu 13.04.
, Это не установлено по умолчанию.
Гм, это не скопирует управляющие коды, но только захватить текст, можно перейти к меню Edit-> Select All, затем нажать Ctrl Сдвиг C и любая (i) вставьте буфер обмена редактору или (ii) тип cat > filename
и нажатие Ctrl Сдвиг V .
man history
ищут расширение истории для завершенных символов. Я верю history
, может сделать то, что Вы спрашиваете.