grep is a universal tool to search globally for a regular expression
pattern match in a document or group of documents.
Search for a string in a file.
-i flag is for doing a case insensitive search.
grep -i pattern file
-E (or `egrep) to search with an extended regexp.
grep -E "pattern1|pattern2" file
-r to search recursively.
grep -ri pattern /home/user/*
Extract file list with
Open all files with ex that match a grep search using : as a delimeter with cut.
ex `grep -ri "pattern" * | cut -d : -f 1 -s | sort | uniq`
Force colors to display
grep to color search results that are long and need to be pushed
to less the colors can be retained as follows:
grep --color=force pattern location | less -R
Find non ascii characters in a codebase:
I found this on Stack Overflow here.
grep --color='auto' -P -n "[\x80-\xFF]" *