Передача цветного вывода команды в команду less - PullRequest
1 голос
/ 27 марта 2019

У меня есть следующая функция для печати цветного вывода из команды:

faketty () {
            script -qfec "$(printf "%s " "$@")" > out; less -r out; rm out;
}

Я не могу передать вывод цвета команды script непосредственно в less -r, потому что форматирование испорчено. Сохранение в файл, как показано, работает. Хотите знать, если я могу избавиться от необходимости сохранять в файл.

ОБНОВЛЕНИЕ: я использую меньше версии 481 (регулярные выражения GNU).

1 Ответ

0 голосов
/ 27 марта 2019

Понятия не имею, почему это работает, но работает:

faketty () {
            script -qfec "$(printf "%s " "$@")" dev/null;
}

faketty cheat $1 $2 | less +Gg -r;

По любой причине помогло перемещение трубы за пределы функции.Однако мне все равно пришлось нажать ^L, чтобы навести порядок.+Gg перемещает файл на последнюю строку, а затем на первую строку.Это как-то «очищает» форматирование без необходимости нажимать ^L.

...