in reply to CGI Question

I would also like the script to write the upload.cgi program but am running into difficulties with the variables conflicting with the main program. Is there a way to have the script written to the newly created directory without conflict? Is there a way to "Shield" the $variables?

You should look into using modules. See perlman:perlmod, perlman:perllib and perlman:perlboot.

You can put your subroutines and variables into their own package, which "shields" them from other packages (in that they are in their own namespace. The program can trample any namespace it wants, but polite programs only change variables in their own namespaces)