in reply to Re: Getting a script's original command line
in thread Getting a script's original command line

Hello NorthernDean and welcome to the monastery and to the wonderful world of Perl!

thanks for your hint, but as merlyn said 18 years ago (ouch!) and as YourMother repeated it is not so reliable. The fact is that perl does not provide a methodo to inspect the original argument list and in this list you must consider also eventual module imported and perl switch.

Our esteemed monk tobyink tried to mind this gap with a little XS module Devel::PL_origargv which you may find useful:

# be aware of windows double quotes! perl -MDevel::PL_origargv -MData::Dumper -e "print Dumper [ Devel::PL_ +origargv->get ]" perlmonks 42 perl $VAR1 = [ 'perl', '-MDevel::PL_origargv', '-MData::Dumper', '-e', 'print Dumper [ Devel::PL_origargv->get ]', 'perlmonks', '42', 'perl' ];

As you can see also the oneliner is included in arguments: infact is an argument passed to perl -e and the same pass if you run a separate program: the filename is included in argument passed to perl.

L*

There are no rules, there are no thumbs..
Reinvent the wheel, then learn The Wheel; may be one day you reinvent one of THE WHEELS.