use Getopt::Long; GetOptions( 'infile|i=s' => \$opt_infile, ); if (defined $opt_infile) { $file{in} = $opt_infile; open (INFILE, "< $file{in}") or die "Error opening $file{in}: $!"; @targets = ; close INFILE or die "Error closing $file{in}: $!"; } else { die "Input file not specified!"; } foreach my $nonsane(@targets) { chomp $nonsane; unless ($nonsane =~ (/^(\w|-|\.)+$/)) { print " $nonsane is an improperly formatted device name.\n"; print " Only alphanumeric, underscore, dash and dot allowed.\n"; print " Edit $file{in} to remove puctuation, blank lines and/or blank spaces.\n"; exit; } }