Friday, 17 Dec 2004 [Monday, 4 Jan 2016]
This is a little Perl script you can use to highlight patterns matches in input data.
Share and enjoy.
usage: hl [ -c color ] [ -x ] pattern [ file... ] [ < input ] The pattern is a Perl regular expression which will be applied to each line of input, repeatedly (using the /g flag), after removing the newline. The -x switch suppresses lines without any matches. The -c switch specifies the colour to highlight the matched portion(s) of the line. By default this is bold green. Capture groups in the pattern can be used to highlight individual areas in each match. Pass a comma-separated list of colours to -c to use this feature. The second colour will be used to highlight the first capture, the third colour for the second capture, etc. If there are more captures than colours, the extra captures are highlighted in the same colour as the overall match. You can set the HILIGHT_COLORS environment variable to your favorite colors to avoid having to pass -c every time. E.g., in your .bashrc: export HILIGHT_COLORS='cyan, green, yellow, magenta,'\ 'blue, red, blue on_yellow, red on_white, bold green' Passing -c explicitly will override the environment. Note: in case of multiple matches, later matches paint over earlier ones. This is only really relevant if you use look-around assertions that contain capture groups, which can allow a capture to highlight a region outside the part of the string matched by that iteration of the pattern.