grep inside less?
Written by: J Dawg
I’m currently sifting through a lot of unfamiliar logs looking for some issues. The first file I look at is Events.log, and I get at least three pages in less
which appear to display the same event at different times – an event that appears to be fairly benign.
I would like to filter this event out, and currently I quit less
and do something like
grep -v "event text" Events.log | less
This now brings a number of other common, uninteresting events that I would also like to filter out. Is there a way I can grep -v
inside of less
? Rather than having to do
egrep -v "event text|somethign else|the other thing|foo|bar" Events.log | less
It strikes me as a useful feature when looking at any kind of log file – and if less
isn’t the tool, is there another with the qualities I seek? Just a less
-style viewer with built in less
.
less
has very powerful pattern matching. From the man page:
&pattern Display only lines which match the pattern; lines which do not match the pattern are not displayed. If pattern is empty (if you type & immediately followed by ENTER), any filtering is turned off, and all lines are displayed. While filtering is in effect, an ampersand is displayed at the beginning of the prompt, as a reminder that some lines in the file may be hidden.
Also use /pattern
to search (and n/N to go to next/previous).
Leave a Reply
You must be logged in to post a comment.