Re: find with -print0 returns incorrect results

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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:

Think about the order of evaluation.


    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

The first one outputs:
    ./a.js ./a.css ./a.html
The second one outputs:
    ./a.js ./a.html

GNU find has an implied print at the end, iff there has been no other print 'test." Not all versions of find does this.

In this context, by "print" I include any test that prints.

--

Cheers
John

-- spambait
1aaaaaaa@xxxxxxxxxxxxxxxx  Z1aaaaaaa@xxxxxxxxxxxxxxxx
-- Advice
http://webfoot.com/advice/email.top.php
http://www.catb.org/~esr/faqs/smart-questions.html
http://support.microsoft.com/kb/555375

You cannot reply off-list:-)


[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux