Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
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? - Answer 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; }

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 chanting in the Monastery: (8)
As of 2016-06-30 19:31 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    My preferred method of making French fries (chips) is in a ...











    Results (403 votes). Check out past polls.