Ramblings about everything from Cars to Computers

Linux Question of the Day – How do I Grep Recursively?

Another common question that I hear on a weekly basis. You would think this would be a pretty straightforward answer, and it is. I think the shear number of options available with Grep is what confuses folks. So, here is the basic way to perform this task.

grep -r “texthere” .

Simple, right? “texthere” is the string that you are searching for, and the -r says search recursively starting from the current directory (.). You can also specify specific filenames or types that you would like to search, such as *.txt, *.php, etc.

On some older Unix versions, you may find that Grep does not support the -r syntax. In that case, try the following :

find ./ -type f | xargs grep “texthere”

Also som version also will not support searching for *.txt as the filename, in that case, try the following :