开发者

Recursive grep for bash in cygwin

开发者 https://www.devze.com 2023-01-14 00:56 出处:网络
if i want an alias to do \"rgrep pattern *\" to search all files from my current location down through any sub directories, what is an alias for rgrep I can add to my bashr开发者_高级运维c file?

if i want an alias to do "rgrep pattern *" to search all files from my current location down through any sub directories, what is an alias for rgrep I can add to my bashr开发者_高级运维c file?

i would also like it to ignore errors and only report positive hits


In order for it to ignore errors (such as "Permission denied"), you'll probably need to use a function instead of an alias:

rgrep () { grep -r "${@}" 2>/dev/null; }


How about:

alias rgrep="grep -r"

This will only show 'positive hits', i.e. lines that contain the pattern you specify.

Small piece of advice, however: you might want to get used to just using grep -r directly. You'll then find it much easier if you ever need to use someone else's workstation, for instance!

Edit: you want to match patterns in file names, not in their contents (and also in directory names too). So how about this instead:

alias rgrep="find | grep"

By default, find will find all files and directories, so then it's just a case of passing that list to grep to find the pattern you're looking for.

0

精彩评论

暂无评论...
验证码 换一张
取 消