use Getopt::Long; use Data::Dumper; my %options = (); #my %options = ('des' => \$des, 'a' => \$a, 'd' => \$d, 'r' => \$r, 'v' => \$v); GetOptions (\%options, 'des', 'a', 'd', 'r', 'v'); print Dumper( \%options ); OUTPUT:- $VAR1 = { 'v' => 1, 'des' => 1, 'a' => 1, 'r' => 1, 'd' => 1 };