BEGIN{ @ARGV == 1 or warn "\n\tUsage: $0 FILE\n\n" and exit 255; $in=shift; warn "Error: Can't read input file $in\n" and exit 255 if ! -s $in; } open (INFILE, $in) or die "Can't open $in for reading\n"; while () { $line = $_; chomp $line; @character=split /\.*/; while (@character){ my $character = shift @character; $ord = ord($character); if ($ord>126) { print "$in contains illegal character \(ord:\ ", "$ord\) on line $."; } elsif ($ord<32) { if ($ord<9) { print "$in contains illegal character \(ord:\ ", "$ord\) on line $."; } if ($ord>10) { print "$in contains illegal character \(ord:\ ", "$ord\) on line $."; } } } } close (INFILE);