Копирование буфера скроллинга экрана GNU в файл (расширенная печатная версия)?

Как легко скопировать буфер прокрутки экрана GNU в файл? IE, a более мощная версия команды "hardcopy"?

В экране GNU я могу использовать "ctrl - a ESC" для ввода прокрутки буфер. Затем я мог бы отметить весь буфер и использовать "ctrl - a ctrl - ]" для вставьте его в буфер emacs, сохранив его в файле.

Однако это утомительно. Есть ли команда экрана, которая будет просто скопируйте буфер прокрутки в файл, например "hardcopy" для видимая часть экрана?

Ответ 1

Чтобы записать все содержимое буфера прокрутки в файл, введите

Ctrl + A и : для перехода в командный режим, затем

hardcopy -h <filename>

В более старых версиях screen, если вы просто выполняете hardcopy -h, он просто записывает в файл -h. Это было исправлено в версии 4.2.0, поэтому hardcopy -h записывается в hardcopy.N, где N - текущий номер окна.

Ответ 2

Нажмите Ctrl + A : bufferfile/tmp/somefile.txt ENTER, а затем Ctrl + A >

Это будет записывать текущее содержимое буфера в указанный файл.

Ответ 3

попробуйте hardcopy -h включить весь буфер

Ответ 4

Это сработало для меня: Войдите в режим редактирования (~): затем введите:

:hardcopy -h buff_file

Он создал огромный файл, из которых 98% было пустым, но мои журналы полностью присутствовали в оставшихся 2%

Ответ 5

TL; DR: ^A:writebuf <filename>

Кажется, что OP хочет использовать выбранную часть буфера, которую вы получаете, когда вы делаете ^ A [, выбирая текст, используя пробел как начало и конец, затем вместо использования ^ A] для вставки, сохраните полученный результат часть буфера в файл.

Я знаю это много лет с тех пор, как это было опубликовано, но я искал ответ на тот же вопрос и в итоге нашел:

^A:writebuf <filename>

Примечание: один 'f' в writebuf

Ответ 6

ctl-a: команда "log on"

или установите его по умолчанию в вашем .screenrc как 'deflog on'

Ответ 7

Ctrl-A h

Это сохраняет текущий экран в файл с жесткой копией, например, hardcopy.0 для экрана 0. Кажется, это будет быстрее, чем переход Ctrl-A: и введите команду hardcopy.