$ cat foo.pl #!/usr/bin/perl use strict; use warnings; use Getopt::Long; use vars qw($foo, $verbose); GetOptions('foo=s' => \$foo, 'v' => \$verbose); # '=s' modifier means foo needs argument, and it can be # any string (another modifier is '=i' for integer.) print "foo = $foo, verbose = $verbose\n"; $ perl foo.pl --foo=bar -v foo = bar, v = 1 $ ./foo.pl --for=bar -v foo = bar, v = 1