How can I have grep not print out 'No such file or directory' errors?
Errors like that are usually sent to the "standard error" stream, which you can pipe to a file or just make disappear on most commands:
grep pattern * -R -n 2>/dev/null
If you are grepping through a git repository, I'd recommend you use git grep
. You don't need to pass in -R
or the path.
git grep pattern
That will show all matches from your current directory down.
You can use the -s
or --no-messages
flag to suppress errors.
-s, --no-messages suppress error messages
grep pattern * -s -R -n