#! /usr/bin/perl use strict; use warnings; use Getopt::Long; my $had_action = 0; # sub routines # ############################ sub parse_options { GetOptions( 'ping' => \&do_ping, 'dump' => \&do_dump, # ... ) or exit 1; }; sub do_ping { # insert code for pinging } sub do_dump { # insert code for dumping } # ... # main program # ############################ parse_options(); __END__