8

Мне нравится сохранять все, что я делаю, в командной строке, например, когда я обновляю что-то и хочу прочитать, как прошло обновление и т.д.

Обычно с Mac OSX и Terminal вы можете прокрутить назад столько, сколько хотите, и сохранить с помощью Cmd-S. Но когда я на SSH с помощью экрана GNU, то я не могу прокрутить обратно прямо из терминала.

Как я могу сохранить на диск все, что происходит во время сеанса экрана? Возможно по умолчанию (каждый сеанс автоматически создает файл на диск ...)

Спасибо!

4 ответа4

7

На screen есть функция регистрации. Запустите его, когда вы запускаете screen , выполнив screen -L (или из screen). Или также изнутри screen вы можете нажать Ctrl - a : H.

Если вы хотите войти в систему по умолчанию, добавьте следующую строку в ваш файл ~/.screenrc :

deflog on

Вы можете установить имя файла, используя что-то вроде:

logfile /tmp/screenlog.%n
2

Вариант 1. Посмотрите на команду сценария. "сценарий человека"

"Скрипт делает машинопись всего, что напечатано на вашем терминале. Это полезно для студентов, которым нужна бумажная запись интерактивного сеанса в качестве доказательства назначения, поскольку файл машинописного текста может быть распечатан позже с помощью lpr ».

В основном наберите "script" (без кавычек) - выполняйте свою работу и наберите exit один раз, чтобы завершить сеанс.

Вариант 2: использовать режим "hardcopy" экрана. 'Crtl-a' then 'h' Это сохранит текущий сеанс в файл.

примечание: экран GNU имеет возможность прокрутки. Используйте «crtl-]» (правая квадратная скобка), чтобы войти в режим копирования, затем «ctrl-b» и «ctrl-f», чтобы перемещать страницу p и вниз одновременно.

2

Можно увеличить прокрутку и просмотреть ее в режиме копирования http://www.samsarin.com/blog/2007/03/11/gnu-screen-working-with-the-scrollback-buffer/

1

Вы захотите использовать операцию 'log', обычно связанную с Ctrl-a H Это открывает новый файл с именем screenlog.N где N - номер окна. Если файл существует, вывод добавляется к файлу. Весь вывод в этом окне записывается в экранный журнал.N файла, пока вы не отключите его, нажав Ctrl-a H раз. Вы также можете получить эту функциональность с помощью Ctrl-a :log . Вы можете изменить имя, используя команду logfile {filename} . Файл помещается в каталог, в котором экран был впервые запущен, но это можно изменить с помощью команды logfile или chdir [{directory}] .

Обратите внимание, что это не то же самое, что печатная копия или буфер прокрутки. Это та же функциональность, что и в программе script(1), но она привязана к одному окну и без вызова новой программы.

Если вы хотите сохранить все содержимое буфера прокрутки, используйте Ctrl-a ] g <space> G <space> Ctrl-a :writebuf Это сохраняет буфер прокрутки в файл /tmp /screen-exchange. Если вы хотите сохранить только часть, измените «g» и «G» на другие клавиши перемещения.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .