use Getopt::Std; Getopt::Std::getopts( 'a:b:de' ); This call sets up five command-line switches: a, b, d, and e. The colons after a, b tell getopts that a, b require values. d, and e are called Boolean switches. Boolean switches are either set or not. For example, the following sets a Boolean switch: command -d The following sets a switch with a value: command -a value With the Getopt::Std module, the getopts routine sets variables starting with opt_ for each option that is set. For example, the -a switch corresponds to the $opt_a variable. Thus, you can use the following code to look for a -a switch: use Getopt::Std; Getopt::Std::getopts( 'a' ); if ( defined( $opt_a ) ) { print "-a flag set to $opt_a\n"; }