Search for a string in multiple files
There are times you need to search for a particular string or pattern in multiple text files. This is when grep proves to be a really handy tool. Type:
# grep -rsniH search_term *
The options mean:
r - be recursive
s - suppress any error messages
n - print the line number
i - do a case insensitve search
H - print the filename
Here are some examples:
# grep -rsniH hello * # grep -rsniH '^the.*http:' *
The first searches all text files for the word “hello“. The second one searches for lines that begin with “the” and also contain “http:“.
You should check the grep man page for more info.

November 14th, 2005 at 6:16 pm
Nice tip – like it.
however, when trying to detect strings in a C project, I do not want to search the object files:
$> find . -name “*.c” | xargs grep expression
November 15th, 2005 at 3:46 am
The same functionality can be achieved with:
# grep -rsniH <expression> *.cBut the use of "
find|xargs" is an excellent addition!Thanks for your feedback.