Ik zocht een manier om te bepalen welke bestanden executables zijn en welke niet.
Helaas; de meeste oplossingen die ik kon vinden waren op het find commando gebaseerd.
Helaas is find echt geen betrouwbaar commando hiervoor, omdat find zich dan alleen maar baseert op het feit dat een executable attribute is gezet of niet voor een gegeven bestand. En dat bestand hoeft dan niet eens echt een executable te zijn.
De oplossing: het file commando onder MacOS. Als voorbeeld
$> file *
Distribution: directory
SomeFile.icns: Mac OS X icon, 3272878 bytes, "ic09" type
MyPicture.png: PNG image data, 1024 x 1024, 8-bit/color RGBA, non-interlaced
NSHelpers.pas: Algol 68 source text, ASCII text
myProgram: Mach-O 64-bit executable x86_64
Zoals je ziet, 'MyProgram' is een executable, en dat wordt hier keurig aangegeven.
Omdat 32bit executables ook het woord "executable" weergeven, kunnen we dus de echte executables op deze manier vinden:
file * | grep "executable"
Hopelijk heeft iemand er iets aan
Merk op: het file commando kan, bij mijn weten, niet recursief door directories gaan.