Grep - Highlight Inside a Highlight

Grep - Highlight Inside a Highlight

I'm facing difficulties while trying to multicolor-highlight matches using grep's color environment.

After I stumbled across Colored grep, I found it very useful to highlight multiple pattern in a single run. So I set up the alias' as told, but then I came across following problem:

echo "Im looking for KeyWords" | grep 'KeyWords' --color=always | green-grep 'Word'

results in

Im looking for Key Words (italic=red, bold=green)

where the "s" is not highlighted red, because grep sets the color environment back to normal after the end of a match.

Is there any way to realize this with grep, or am I facing a wall?

2 Answers

You haven't hit a wall, but you've hit a |! (So unfortunately, no, you cannot do that without a major re-write of the grep source code.)

However, I like the idea, so if you want, feel free to file a bug at the FSF, or if you don't want to go through the effort, I'll file the bug for you! (just drop a comment)


Fantastic question! I've already added:

alias grey-grep="GREP_COLOR='1;30' grep --color=always"
alias red-grep="GREP_COLOR='1;31' grep --color=always"
alias green-grep="GREP_COLOR='1;32' grep --color=always"
alias yellow-grep="GREP_COLOR='1;33' grep --color=always"
alias blue-grep="GREP_COLOR='1;34' grep --color=always"
alias magenta-grep="GREP_COLOR='1;35' grep --color=always"
alias cyan-grep="GREP_COLOR='1;36' grep --color=always"
alias white-grep="GREP_COLOR='1;37' grep --color=always"

to my bash.bashrc file!

0

This way works only if the grep functions return a single line, otherwise the piping cancel susbequent lines I was trying to use egrep with five regex expression, whith espressions in different line in original file (it's a log with a lot of info); so far i can change the colour, but not get a different color for every regex filter:

cat logfile egrep 'regex1|regex2|regex3|regex4|regex5'

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Robert Thorne
Author

Robert Thorne

Robert Thorne covers electric vehicle innovations, autonomous driving systems, global mobility trends, and automotive engineering developments.