Re: How to run Perl script at Mac OS (Darwin) Release?

[email protected]
Newsgroups perl.macosx
Message-ID <[email protected]>
On Mar 7, 2008, at 7:35 PM, Gary Yang wrote:

> Hi,
>
>  Below is my Perl script. The script named, test1.pl
>
>  test1.pl
>
>  #!/usr/local/ActivePerl-5.10/bin/perl -w
>
>  print "$^O\n";
>
>
>  I have to type, "perl test1.pl" in order to run it. I got command  
> not found if I simply typed test1.pl. Can someone tell me why and  
> how to fix it?
>

Indeed, as Chas. mentioned, the script you have written must be  
'executable'. There is a distinction between a script that is plain  
text, like yours, and a script that can 'execute' that plain text as  
if it were instructions to the computer. When you called your script,  
you did it like this: test1.pl But your computer did not understand  
that you wanted to execute all the commands in your script, it just  
saw plain text.

To tell your computer to execute your script, you have to change the  
permissions. That is, you have to give permission to execute the  
script. The way to do that is to use a command called 'chmod'.  chmod  
'CHanges file MODes' - it turns a plain script into an executable  
script. Do a `man chmod` to find out more, or just do what Chas.  
suggested:

chmod a+x test.pl

Now you can call your script and your computer will understand, "Aha!"  
it will say. "I am to execute each command in this file as if someone  
wrote it on the command line!" To call your script, do this:

./test.pl

See the dot and the slash before your script's name? That says,  
'execute this script right here.' Now you should see the output from  
your script.

	Jeremiah
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.