find with -print0 returns incorrect results

Rick Stevens rstevens at internap.com
Tue Dec 11 19:47:17 UTC 2007


On Tue, 2007-12-11 at 10:02 +0200, Razvan RACASANU wrote:
> On Dec 10, 2007 11:52 PM, Rick Stevens <rstevens at internap.com> wrote:
> >
> > No.  Remember, -print0 prints immediately, so the only test that was
> > applied before the print was "-type f" in the first one.  In the second
> > one, you did the "-iname" tests.  Since they fail on the "a.css" file,
> > the -print0 wasn't invoked for that file.
> 
> Thanks a lot. As I originally understood it, -print0 was just another
> test, so the evaluation order should not have mattered in that case,
> but now it makes perfect sense.

Glad to hear it.  BTW, the evaluation order is significant with an
optimized system.  In a chain of "ands" such as "a and b and c", if a is
true and b is false, there's no reason to even evaluate c, since the
proposition is already false.  Most systems take advantage of that to
speed execution.  Yes, it technically violates Boole's laws, but what
the heck?

----------------------------------------------------------------------
- Rick Stevens, Principal Engineer             rstevens at internap.com -
- CDN Systems, Internap, Inc.                http://www.internap.com -
-                                                                    -
-  Tempt not the dragons of fate, since thou art crunchy and taste   -
-                         good with ketchup.                         -
----------------------------------------------------------------------




More information about the users mailing list