in reply to defining variable values on the commandline

When dealing with anything but one-liners, I might also suggest you examine the Getopt:: line of modules (like Getopt::Std). These generally provide a more flexible mechanism for grabbing command-line arguments, and frequently can make use of a hash to avoid polluting your global name space.