"Меньше" запрашивает отображение "двоичного файла", когда цвета выводятся

Недавно мы включили раскрашивание файлов журналов нескольких сервисов, я полагаю, что для этого мы используем escape-последовательности ANSI. Выглядит так:

[2014-06-12 10:56:43,214] [main] [VOID] ESC[34mINFO ESC[0;39m ESC[36mc.a.m.p.s.config.DataSourceConfigESC[0;39m 

Мои коллеги в основном используют tail просматривать лог-файлы, но мне нравится less лучше. К несчастью, less не принимает автоматически эти коды. Вместо этого он говорит мне, что мой файл журнала "может быть двоичным файлом. Видите ли вы его в любом случае?".

Я знаю, если я добавлю -r вариант, less отобразит цвета, но все равно задает вопрос "бинарный файл".

Есть ли способ обойти это? Если да, могу ли я сделать это по умолчанию?

2 ответа

Решение

Флаг есть -f или же --force:

less -f -r myfile

Для того, чтобы сделать его по умолчанию, вы должны установить эту переменную среды, например, в /etc/profile

LESS=-f

Я бы никогда не раскрасил сами файлы журналов. Это может привести к поломке любого стороннего скрипта или инструмента (например, grep, sed, awk ...), которые будут работать с лог-файлами или, по крайней мере, загромождать их вывод.

Я бы вместо этого раскрасил вывод по требованию при просмотре / отслеживании файла журнала. использование colortail например.

Другие вопросы по тегам