“Menos” solicita que “arquivo binário” seja exibido quando as cores na saída

1

Recentemente, ativamos a coloração dos arquivos de log de alguns serviços. Acredito que usamos sequências de escape ANSI para isso. Parece assim:

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

Meus colegas usam principalmente tail para exibir arquivos de log, mas eu gosto de less melhor. Infelizmente, less não detecta automaticamente esses códigos de escape. Em vez disso, ele me diz que meu arquivo de log "pode ser um arquivo binário. Vê assim mesmo?".

Se eu adicionar a opção -r , less exibirá as cores, mas ainda fará a pergunta "arquivo binário".

Existe uma maneira de contornar isso? Se sim, posso fazer disso um padrão?

    
por reinhard.codes 24.06.2014 / 09:42

2 respostas

6

O sinalizador é -f ou --force :

less -f -r myfile

Para torná-lo padrão, você deve definir essa variável de ambiente, por exemplo, em /etc/profile

LESS=-f
    
por 24.06.2014 / 10:45
1

Eu nunca coloriria os arquivos de log. Isso potencialmente quebraria qualquer script ou ferramenta de terceiros (como grep, sed, awk ...) que operaria nos arquivos de log ou, pelo menos, sobrecarregaria sua saída.

Eu preferiria colorir a saída sob demanda ao assistir / rastrear o arquivo de log. Use colortail por exemplo.

    
por 24.06.2014 / 11:03