#!/usr/bin/perl -w use strict; use Getopt::Long; my( $username, $password, $group ); my %params = ( 'u=s' => \$username, 'p=s' => \$password, 'g=s' => \$group, ); sub usage { die << "USAGE"; Usage: $0 -u username -p password -g group [-others] Description: whatever... USAGE } usage() unless( GetOptions( %params ) ); for( values %params ) { usage() unless defined ${ $_ }; }