The main problem with using 'find' is that it relies on an attribute set to executable, even if this attribute is set for a non-executable file. This isn't a shell difference, it's an operating system/operating system utility tools difference.Ī very old question, I'm aware, but searching for a solution I may have found a better answer. Remember that OS X is BSD-based, not Linux based, so the Gnu commands you're used to in Linux distributions (of which find is one of them) aren't necessarily the same as they are in OS X. Note, the first character of a symbolic mode may not be a dash (``-''). Otherwise, this primary evaluates to true if the bits in the mode exactly match theįile's mode bits.
(``+''), this primary evaluates to true if any of the bits in the mode are set in the file's The bits in the mode are set in the file's mode bits. If the mode is preceded by a dash (``-''), this primary evaluates to true if at least all of S_ISTXT | S_IRWXU | S_IRWXG | S_IRWXO) of the file's mode bits participate in the comparison. If the mode is octal, only bits 07777 (S_ISUID | S_ISGID | Starting value of zero is assumed and the mode sets or clears permissions without regard to the The mode may be either symbolic (see chmod(1)) or an octal number. From the man page for find in OS X: -perm mode