Cor saída awk na linha de comando?

3

Quando eu procuro um arquivo de log no awk, existe a possibilidade de colorir a saída na linha de comando?

    
por NES 26.12.2010 / 14:17

3 respostas

3

Acho que a única maneira é usar códigos de cores ANSI:

{ print "Name: 3[1;31m" $2 "3[0m" }

link

    
por 26.12.2010 / 14:25
2

Existem vários programas que podem colorir arquivos de log, código-fonte e texto geral. Além dos mencionados em esta questão , existem:

por 26.12.2010 / 21:10
0

Para a conveniência de futuros consultores, aqui está um conjunto de funções que podem ser colocadas em um arquivo chamado, digamos, color.awk .

function  BLACK(X)             { return "3[30m"   X "3[0m" }
function  RED(X)               { return "3[31m"   X "3[0m" }
function  GREEN(X)             { return "3[32m"   X "3[0m" }
function  YELLOW(X)            { return "3[33m"   X "3[0m" }
function  BLUE(X)              { return "3[34m"   X "3[0m" }
function  MAGENTA(X)           { return "3[35m"   X "3[0m" }
function  CYAN(X)              { return "3[36m"   X "3[0m" }
function  WHITE(X)             { return "3[37m"   X "3[0m" }
function  BRIGHT_BLACK(X)      { return "3[90m"   X "3[0m" }
function  BRIGHT_RED(X)        { return "3[91m"   X "3[0m" }
function  BRIGHT_GREEN(X)      { return "3[92m"   X "3[0m" }
function  BRIGHT_YELLOW(X)     { return "3[93m"   X "3[0m" }
function  BRIGHT_BLUE(X)       { return "3[94m"   X "3[0m" }
function  BRIGHT_MAGENTA(X)    { return "3[95m"   X "3[0m" }
function  BRIGHT_CYAN(X)       { return "3[96m"   X "3[0m" }
function  BRIGHT_WHITE(X)      { return "3[97m"   X "3[0m" }
function  BG_BLACK(X)          { return "3[40m"   X "3[0m" }
function  BG_RED(X)            { return "3[41m"   X "3[0m" }
function  BG_GREEN(X)          { return "3[42m"   X "3[0m" }
function  BG_YELLOW(X)         { return "3[43m"   X "3[0m" }
function  BG_BLUE(X)           { return "3[44m"   X "3[0m" }
function  BG_MAGENTA(X)        { return "3[45m"   X "3[0m" }
function  BG_CYAN(X)           { return "3[46m"   X "3[0m" }
function  BG_WHITE(X)          { return "3[47m"   X "3[0m" }
function  BG_BRIGHT_BLACK(X)   { return "3[100m"  X "3[0m" }
function  BG_BRIGHT_RED(X)     { return "3[101m"  X "3[0m" }
function  BG_BRIGHT_GREEN(X)   { return "3[102m"  X "3[0m" }
function  BG_BRIGHT_YELLOW(X)  { return "3[103m"  X "3[0m" }
function  BG_BRIGHT_BLUE(X)    { return "3[104m"  X "3[0m" }
function  BG_BRIGHT_MAGENTA(X) { return "3[105m"  X "3[0m" }
function  BG_BRIGHT_CYAN(X)    { return "3[106m"  X "3[0m" }
function  BG_BRIGHT_WHITE(X)   { return "3[107m"  X "3[0m" }
function  SKYBLUE(X)           { return "3[38;2;40;177;249m" X "3[0m" }

Poder-se-ia então usar essas coisas para colorir uma coluna como essa.

awk -f color.awk -e '{$1 = RED($1); print}' input.log
    
por 11.05.2018 / 22:43