in reply to Help display when executing the script

I strongly recommend that you use strictures: use strict; use warnings;. They would have told you that the assignment in the conditional expression was likely a bad thing to do. You probably actually want something like:

if ($ARGV[0] eq 'h') {

Note the use of eq rather than == because you want a string compare rather than a numeric compare.

However a much better way to manage all the command line processing is to use Getopt::Long.


DWIM is Perl's answer to Gödel