Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things

Answer: How do you use command line parameters?

by japhy (Canon)
on Sep 20, 2000 at 18:47 UTC ( #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.

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (3)
As of 2016-10-27 05:54 GMT
Find Nodes?
    Voting Booth?
    How many different varieties (color, size, etc) of socks do you have in your sock drawer?

    Results (353 votes). Check out past polls.