Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic

multiple entries per option (Getopt)

by mlebel (Hermit)
on Jan 26, 2012 at 20:29 UTC ( #950214=perlquestion: print w/replies, xml ) Need Help??
mlebel has asked for the wisdom of the Perl Monks concerning the following question:

Hello everyone,

I am wondering if there is a way to have multiple entries passed for a single option when launching a perl script. (the only post that I found this on was using getopt::long but i didn't quite understand the answer)

Here is an example of what I mean:

testmachine># ./ -o entry1 entry2 or testmachine># ./ -o entry1 -o entry2

If this is possible, what would be the code to handle this within a perl script?

If it is not possible, how could a situation like that be handled?

Any help is appreciated!

Thanks, Marc.

Replies are listed 'Best First'.
Re: multiple entries per option (Getopt)
by toolic (Bishop) on Jan 26, 2012 at 20:38 UTC
Re: multiple entries per option (Getopt)
by Perlbotics (Chancellor) on Jan 26, 2012 at 20:51 UTC

    You could feed your examples to the following program and see what happens... The important part is the "o=s" telling Getopt to look for -o switches with a string argument and the array-ref telling it to accumulate the -o arguments into an array.

    use strict; use warnings; use Getopt::Long; my @o_list; unless ( GetOptions ("o=s" => \@o_list) ) { print "GetOptions had problems parsing ARGV!\n"; } print "List of -o things: ", join(", ", @o_list), "\n"; print "Unparsed arguments: ", join(", ", @ARGV ), "\n";

Re: multiple entries per option (Getopt)
by mlebel (Hermit) on Jan 27, 2012 at 02:41 UTC

    you guy's are awesome!

    Through both of your posts, I was able to achieve exacly what i needed. And with the added bonus that I understand what is happening.

    Thank you toolic and perlbotics!

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://950214]
Approved by Perlbotics
[hippo]: Please also take a moment to read through I know what I mean. Why don't you? - this guidance will help others to help you.

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (6)
As of 2018-02-21 10:21 GMT
Find Nodes?
    Voting Booth?
    When it is dark outside I am happiest to see ...

    Results (277 votes). Check out past polls.