In GNU/Linux searching for files using the text inside those files is always a requirement. Standard 'find' command can be quickly used for that.


Search by partial name
find -name ""
Above command is useful only if you can remember the filenames at least some parts of the file name. If you are a software developer, you know how many times you would want to search files based on the content.
Search by content
# pattern
find <path> -name "<file name pattern>"
-exec grep -l "<text to search>" {} \;
find /opt/work/project -name "*.properties" -exec grep -l "db.user" {} \;
IgnoreCase search can be done by adding "-i" attribute to grep command; check following command.
find /opt/work/project -name "*.properties" -exec grep -il "db.user" {} \;
When would content search be used?
- You remember some parts of the content but not the file name
- Find which property file contains an specific property used in your program
- Locate the Style sheet (css file) containing a specific style class or property
- Find Java class files that references some methods like "indexOf"
- and so on...
COMMENTS