Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW

Re: Getting args

by Dylan (Monk)
on Dec 11, 2001 at 00:09 UTC ( #130760=note: print w/replies, xml ) Need Help??

in reply to Getting args


All command line args go into the global array @ARGV.
shift defaults to @ARGV (when it is not in a suboutine)...
More info on that is in the Perl predefined variables node.
for one arg, you can shift it, like so: my $var = shift
or, for many args:
my ($var1,$var2,var3,$var4)=@ARGV;

Which is kinda neat.
Also, you could access them directly: print $ARGV[0]
Well, there might be even more ways, but you get the idea, right? :)

Here's some code to play with.

#!/usr/bin/perl if ($#ARGV == 2) { # $#ARGV is number of args in @ARGV minus one my $foo = shift; #First arg; my $bar = shift; #second arg; my $baz = shift; #Last arg; #print it; print "You say $foo $bar $baz?\n"; } else { #Warn, and exit; warn <<TEXT; I need three arguments! Usage: $0 arg1 arg2 arg3 TEXT }

I hope that helps. :-)

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://130760]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (3)
As of 2023-03-23 17:00 GMT
Find Nodes?
    Voting Booth?
    Which type of climate do you prefer to live in?

    Results (60 votes). Check out past polls.