Search for a text pattern in linux
I'm a linux newbie. I need to search for a string "teststring" in all *.java files coming under /home/user1/ (including subfolders). How can I do it in linux via shell command.
The easiest way is to use GNU grep's features:
grep -r --include '*.java' teststring /home/user1
If you're ever on another unix variant that doesn't have GNU grep, here's a portable way:
find /home/user1 -name '*.java' -exec grep teststring {} +
using ack you just type: cd /home/user01 && ack --java teststring
For this ack aka ack-grep its the killer app in my mind ;)
You can ack some_string /in/path_y
to find some_string in path_y
Or simpler ack some_other_string
to find some_other_sting in current dir.
Found it. Posting it as it might help someone.
find /home/user01 -name *.java | xargs grep "teststring"
Please correct if there is any better way.