Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Answer: How do you use command line parameters?

( #33290=categorized answer: print w/ replies, xml ) Need Help??

Q&A > input and output > How do you use command line parameters? contributed by japhy

Command-line parameters are sent to a Perl program in the same way they're sent to any other.
% ./myprog foo bar blat
The @ARGV array holds the command-line arguments, and in this case, it would hold ('foo', 'bar', 'blat').

Perl allows for simplistic command-line options via the -s option to perl:
#!/usr/bin/perl -s print "value of -x: $x\n"; print "value of -name: $name\n";
Here's a sample run:
% ./myprog -x -name=Jeff value of -x: 1 value of -name: Jeff
If you want more complex option parsing, there are two standard modules that can do this for you: Getopt::Std and Getopt::Long.

Perl allows you to treat the arguments in @ARGV as filenames, by using the special case of the <> operator.
while (<>) { # $ARGV is the filename # $_ is the line # $. is the line number # reset it to 0 by doing # $. = 0 if eof; # or # close ARGV if eof; }

Comment on Answer: How do you use command line parameters?
Select or Download Code
Replies are listed 'Best First'.
RE: Answer: How do you use command line parameters?
by japhy (Canon) on Sep 20, 2000 at 18:52 UTC
    That is, you can use the arguments in @ARGV as filenames to read from. Should've made that clear.

    $_="goto+F.print+chop;\n=yhpaj";F1:eval
Log In?
Username:
Password:

What's my password?
Create A New User
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (12)
As of 2015-07-31 16:36 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (279 votes), past polls