Your problem might be that there is a CR after the #!/usr/bin/perl line, so the kernel will try to use the binary named "/usr/bin/perl\r" which of course does not exist.
There's been some post about this, I'll try to search it.
Update: ah, here is it: Re: Perl Script only runs with -w switch
In reply to Re: #!/usr/bin/perl
by ambrus
in thread #!/usr/bin/perl
by emilio_ayllon
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |