Как сбросить буфер прокрутки экрана GNU при сохранении управляющих последовательностей ANSI? - PullRequest
0 голосов
/ 04 июня 2018

В сеансе экрана его буфер прокрутки можно сохранить в файл, введя ^A:hardcopy -h /path/to/filename.Однако это удаляет все управляющие последовательности ANSI из вывода.

Я хочу что-то вроде less -R, но для сохранения буфера прокрутки.

пример сценария для создания цветного текста:

#!/bin/bash
# both times, the word 'red' is printed in bright red text.
printf 'example \x1b[1;31mred\x1b[m output\n' |tee example.log
cat example.log

Вы также можете просмотреть файл с помощью less -R example.log

1 Ответ

0 голосов
/ 04 июня 2018

Когда терминал использует последовательности ANSI, он не сохраняет их дословно в памяти, а вместо этого преобразует для отображения атрибутов отдельных символов на экране.hardcopy, очевидно, не был предназначен для вывода этих атрибутов.

Однако вы можете получить то, что вам нужно, если вы включите ведение журнала.См. этот ответ , например.

...