You need to use grep command. grep searches the given input FILEs for lines containing
grep command form (syntax)amatch or a text string.
grep “text string to search” directory-path
For example search for a string called redeem reward in all text files located in /home/tom/*.txt directory, use
$ grep "redeem reward" /home/tom/*.txt
Task: Search all subdirectories recursively
You can search for a text string all files under each directory, recursively with -roption:
$ grep -r "redeem reward" /home/tom
Task: Only print filenames
By default, grep command prints the matching lines You can pass -H option to print the filename for each match.
$ grep -H -r “redeem reward” /home/tom
... filename.txt: redeem reward ...
To just print the filename use cut command as follows:
$ grep -H vivek /etc/* -R | cut -d: -f1
... filename.txt ...