This is the mail archive of the
cygwin
mailing list for the Cygwin project.
problem with find's -size and -exec options
- From: "j. k. colligan" <jkevinc at gmail dot com>
- To: cygwin at cygwin dot com
- Date: Mon, 14 May 2012 18:29:57 -0400
- Subject: problem with find's -size and -exec options
Friends -
I just noticed a difference in behavior between Cygwin's "find" and
the one in Linux, or
so it seems.
I was trying to locate files smaller than a given size, and thus ran
??? find . -size -4000c
That worked, and listed the file names only for files < 4000 bytes in
size.? But if I run
??? find . -size -4000c -exec ls -l {} \;
it turns out that *all* files are listed!? (Plus the small ones at the
end of the list.)? This
surprised me.? In other similar cases I've run in the past, the
earlier-in-the-command-line
filters took effect before the exec.
The Linux version of "find" doesn't operate that way:? in the latter
case, only the "small"
files are passed to ls.? And if one replaces "-4000c" with "+4000c",
it works as I'd expect.
And yeah, I tried escaping that minus sign for the Cygwin shell, a la
??? find . -size \-4000c -exec ls -l {} \;
Same unexpected (to me) result.? Am I way outta whack here, of is this
a real problem?
Thanks!
cheers,
j. kev
jkevinc@gmail.com
Monday, 2012.05.14 @ 1830 EDT
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple