I'm going to assume you were executing the script as "perl foo.pl" on the command line. If so, you are executing the perl executable (which just happens to be the same path as you'd put on the shebang line). The shebang line becomes necessary if you want to execute the script via "./foo.pl" on the command line. Because in this case, you are executing the actual script itself (via the shell), and the shell has to know which program to use to interpret the file.
Essentially, try one of your "magic" scripts by executing a "chmod 755 foo.pl" on it and then run "./foo.pl". It won't work (unless the valid perl path is placed as the first shebang line). The rest of the shebang lines aren't actually shebang lines. perl comments begin with '#', so all other "shebang lines" are really just plain old comments.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|