#!/usr/bin/perl
use strict; # https://perlmonks.org/?node_id=11160457
use warnings;
use Getopt::Long;
$SIG{__WARN__} = sub { die @_ };
@ARGV = qw( --foo 123 --bar 456 --foo 789 something extra );
use Data::Dump 'dd'; dd '@ARGV before', \@ARGV;
my @fooarray;
my @bararray;
GetOptions
'foo=s' => \@fooarray,
'bar=s' => \@bararray;
use Data::Dump 'dd'; dd 'fooarray', \@fooarray;
use Data::Dump 'dd'; dd 'bararray', \@bararray;
use Data::Dump 'dd'; dd '@ARGV after', \@ARGV;
Outputs:
(
"\@ARGV before",
["--foo", 123, "--bar", 456, "--foo", 789, "something", "extra"],
)
("fooarray", [123, 789])
("bararray", [456])
("\@ARGV after", ["something", "extra"])
|