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

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

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

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

Ответы [ 7 ]

256 голосов
/ 07 июля 2011

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

Ctrl + A и : , чтобы перейти к командеmode, тогда

hardcopy -h <filename>

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

24 голосов
/ 05 мая 2011

Нажмите Ctrl + A : файл буфера /tmp/somefile.txt ENTER , а затем Ctrl + A >

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

9 голосов
/ 14 апреля 2015

TL; DR: ^A:writebuf <filename>

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

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

^A:writebuf <filename>

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

6 голосов
/ 02 июня 2011

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

3 голосов
/ 21 марта 2012

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

:hardcopy -h buff_file

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

0 голосов
/ 03 декабря 2013

Ctrl-A h

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

0 голосов
/ 10 февраля 2011

ctl-a: команда выдачи 'log on'

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

...