Subject: Re: bug#3479: rgrep sends directories needlessly to grep

From: Stefan Kangas <[email-masked]>
Date: Sun, 6 Oct 2019 06:50:31 +0200

[email-masked] writes:

> Gentlemen, I used the same string as e.g.,
> (rgrep "bla" "*" "~/mediawiki/")
> produced, and instead appended fgrep, and found
> $ find . \( -path \*/CVS -o -path \*/.svn -o -path \*/\{arch\} -o -path \*/.hg -o -path \*/_darcs -o -path \*/.git -o -path \*/.bzr \) -prune -o  -type f \( -name \* \)|fgrep -c .svn
> 62
> That's right, 62 .svn's, when you thought you had eliminated them. They
> are all directories.
>
> OK, now putting the print inside ( ),
> $ cd ~/mediawiki/;find  . -path \*/.svn  -prune -o \( -type f \( -name \* \) -print \)|fgrep .svn
> ./math/.svnignore
> ./tests/.svnignore
> Which were put there by the staff, so we have indeed eliminated what we
> need to!
>
> Therefore consider putting your ...-print0 inside a ( )!

This was reported 10 years ago.  If you still remember what it's
about, could you please explain how to reproduce whatever issue this
is inside Emacs?  And what is the issue here exactly?  I'm not sure I
understand.

Thanks in advance.

Best regards,
Stefan Kangas