Cómo seguir la demanda basándose en una búsqueda y colorear el resultado

Cómo seguir la demanda basándose en una búsqueda y colorear el resultado

Hola, tengo un archivo de registro que tiene mucha información y es bastante difícil detectar lo que estoy buscando, así que llegué a este comando que me muestra solo lo que quiero ver en el registro, actuará como un oyente. cuando el patrón coincide solo muéstrame los resultados de la búsqueda

tail -f file.log | GREP_COLOR='01;36' egrep --color=always "\"stringOneExample\""

Y funciona bien, el problema es si conecto otro grep

tail -f file.log | GREP_COLOR='01;36' egrep --color=always "\"jsonKeyOne\"" | GREP_COLOR='01;31' egrep --color=always "\"jsonKeyTwo\""

Creo que no funciona porque cuando conecto uno dentro del otro, el resultado del primero no contiene la condición del segundo, no se muestra nada, por lo que quiero que ambos (o más) grep operen en todos los archivos y simplemente proporcionen Cada cuerda tiene un color diferente para detectar la diferencia más fácilmente.

NOTA: si agrego :|$ al final, actuará como una cola normal y me mostrará mucha información adicional que no es lo que quiero.

 tail -f file.log | GREP_COLOR='01;36' egrep --color=always "\"stringOneExample\":|$"

Respuesta1

Utilice preferentemente:

grep -e 'jsonKeyOne' -e 'jsonKeyTwo'

…a O tus términos. Dependiendo de su tipo de grep, también es posible -E 'jsonKeyOne|jsonKeyTwo'. Esta es la opción más rápida solo con los términos.

Los diferentes colores funcionan así: el primer término solo está coloreado y todas las demás líneas no están coloreadas, el siguiente término con un color diferente y todas las demás líneas también... hasta el último término con su color y también todas las demás líneas.

Ya sea grep o resaltado de sintaxis, mejor no ambos.

información relacionada