Android shell script permissions?
Execute permissions on the SDCard is blocked for that reason.
See this:
/dev/block/vold/179:1 /mnt/sdcard vfat rw,dirsync,nosuid,nodev,**noexec**,relatime,uid=1000,gid=1015,fmask=0602,dmask=0602,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0

The noexec part of this line emphasized with two asterisks is the key to prevent any execution of scripts/binaries from the SDCard.
Have a funny feeling this was answered before...deja-vu
Edit
Yup @Izzy has answered this before and here as well.