变体1:
#!/usr/bin/perl
my $command=join(' ',@ARGV);
if ($command eq 'aviator') { &aviator; }
elsif ($command eq 'aviator debug' or $command eq 'debug aviator') { &aviator_debug; }
elsif ($command eq 'admin debug' or $command eq 'debug admin') { &admin_debug; }
elsif ($command eq 'admin') { &admin; }
else {print "invalid option ".$command."\n";exit;}
变体 2:
#!/usr/bin/perl
if (grep /^aviator$/, @ARGV ) {
if (grep /^debug$/, @ARGV) { &aviator_debug; }
else { &aviator; }
} elsif (grep /^admin$/, @ARGV ) {
if (grep /^debug$/, @ARGV) { &admin_debug; }
else { &admin; }
} else { print "invalid option ".join(' ',@ARGV)."\n";exit;}
exit;
变体 3:
#!/usr/bin/perl
use Switch;
switch (join ' ',@ARGV) {
case 'admin' { &admin();}
case 'admin debug' { &admin_debug; }
case 'debug admin' { &admin_debug; }
case 'aviator' { &aviator; }
case 'aviator debug' { &aviator_debug; }
case 'debug aviator' { &aviator_debug; }
case /.*/ { print "invalid option ".join(' ',@ARGV)."\n";exit; }
}