I'm trying to run this script on Mac OS 10.7 (Lion) and I'm getting the error:
$ bbcolors
-bash: /usr/local/bin/bbcolors: /usr/bin/env: bad interpreter: Operation not permitted
I've successfully run this script on other Macs of mine. It's just this script downloaded and unmodified from Daring Fireball.
I found this person with a very similar problem but the accepted answer was that the filesystem had a 'noexe' option on mount. I'm pretty sure that's not the case for me because I've just got it in /usr/local/bin/ and other stuff in there works fine (it also doesn't run from other places or as other users including root).
$ which bbcolors
/usr/local/bin/bbcolors
$ ls -l /usr/local/bin/bbcolors
-rwxr-xr-x@ 1 nick staff 9751 Mar 30 19:09 /usr/local/bin/bbcolors
It's a Perl script not a compiled binary, not that that should matter. Here's some extra info for what it's worth:
$ cat /usr/local/bin/bbcolors |head -n 1
#!/usr/bin/env perl
$ which perl
/usr/bin/perl
$ env | grep PATH
PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
perl -v
? What appears after the initial comment lines in the Perl script (bbcolors
)? Also, the@
after the permissions means there is some auxilliary attribute information for the file; have you investigated that that is (perhaps withls -@
)?xattr -r com.apple.quarantine /file/path
I will answer my own question but I don't have enough rep to do it for a few hours.xattr -d com.apple.quarantine /usr/local/bin/bbcolors
? (-r
means 'recursive';-d
means 'delete'.) I keep forgetting what that command is called.