-- is how you'd generally denote options for something else other than the first executable that's being called.
For example for perl, perlrun says that: A -- signals the end of options and disables further option processing. Any arguments after the -- are treated as filenames and arguments..
What this means roughly, IIRC, is that you use it to pass of options after -- to the perl script you're calling with perl.
For example,
$ perl -MSome::Module ./myperlscript.pl -- --my-opt1 foo --my-opt2 bar
What this also means, I think, is that it's useless when part of the shebang line. Or maybe not, idk. Seems odd being in the shebang, though.
Update - after thinking about it, I can see how this might be considered a defensive programming tactic. E.g., if somehow some script kiddie was seeking the add options to your shebang, having -- would make anything after moot. Similarly, adding __END__ at the end of your perl scripts would also neutralize someone blindly appending to your files. | [reply] [d/l] [select] |
Interesting and new info for me, but does not seem useful in this context.
I don't see why double dash would be used except perhaps for testing?
Certainly I would not end the shebang line with a "proforma" double dash which has no purpose.
| [reply] |
yeah, That's why I mentioned the "defensive" angel, but I agree I've never used it or seen it for perl; I have used it in other places tho
| [reply] [d/l] |