I'm using the less to view log files. This is quite good, but I want to filter out some lines from output. E.g. I don't want to see lines containing "DEBUG" or I want see lines which contain only "[pool-9-thread-4]".

Is there easy way to do it? Is there any more advanced tool to work with log files?

I know solution as grep 'pool-9-thread-4' my.log | less, but it is not good enough - I cannot change filtering criteria and it works slow for large files.

1 Answer 1


A list of characters enclosed by [ and ] is called bracket expression.
For example, the regular expression [0123456789] matches any single digit.
You should escape [] to get literal value:

$ grep '\[pool-9-thread-4\]' my.log | less
  • Oh, yes, you are right about the brakets, just a typo, but it is not related to my question.
    – kan
    Mar 2, 2012 at 14:26

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .