use Getopt::Long qw[ :config no_ignore_case ]; use DDS; local @ARGV = qw[ -l -L asdf ]; GetOptions( \%h, qw[ l! L:s ] ); Dump( \%h ); __END__ $HASH1 = { L => 'asdf', l => 1 };