find with -print0 returns incorrect results
Luciano Rocha
strange at nsk.no-ip.org
Mon Dec 10 21:31:29 UTC 2007
On Mon, Dec 10, 2007 at 11:23:17PM +0200, Razvan RACASANU wrote:
> Thanks for your answers, but I still have a question about this.
>
> So, if I understand correctly, -print0 is considered as just another
> test (just like -iname) that is evaluated for each file according to
> operator precedence. In this case, since -print0 always returns true,
> shouldn't the following commands be equivalent:
>
> find . -type f -and -print0 -and \( -iname '*.html' -or -iname
> '*.js' \) | xargs -0
> and
> find . -type f -and \( -iname '*.html' -or -iname '*.js' \) -and
> -print0 | xargs -0
>
No, because tests are evaluated in order:
1. Is type f? yes. print0? yes (always yes). ...
2. Is type f? yes. ends with html or js? yes. print0? yes.
--
lfr
0/0
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/fedora-list/attachments/20071210/79e1cd49/attachment-0001.sig>
More information about the fedora-list
mailing list