Recursive grep

Posted by roshi in UNIX

This tip is for grepping a pattern even in the sub-directories of a particular directory in addition to the files in the current directory.

Since grep -R <> <> is not available on all flavors, this can be really helpful.


The command is as follows :

find -name | xargs grep

The arguments are self-explanatory.
The output of find will be xarg‘ed to the input of grep
and these will be searched for search string.

Here’s additional examples:

find -maxdepth 1 -type f -print0 | xargs grep -F ‘example’
#Will Search all regular files for ‘example’ in current dir

find -type f -print0 | xargs -r0 grep -F ‘example’
#Will Search all regular files for ‘example’ in current dir and below

The Conversation

Follow the reactions below and share your own thoughts.

  • Lee

    This is a fantastic tip, thank you!