#!/usr/bin/perl use Getopt::Long; GetOptions( "i" => \$options{i}, "o=s" => \$options{o}, "p=s" => \$options{p}, "h" => \$options{h} ); foreach $arg (@ARGV) { print "$arg is still in ARGV\n"; } foreach $opt (keys %options) { print "$opt is $options{$opt}\n" if $options{$opt}; } #### nkuvu$ perl try.pl --i h --o=foo h is still in ARGV o is foo i is 1 #### GetOptions( #whatever ); die "Gah! (with appropriate error message here)\n" if (@ARGV);