in reply to exec a CGI from within another CGI

Note that exec, if successful, will terminate execution of the current program at that point, in favor of the new command that you're passing to exec. Thus, you will never see "remaining text goes here", because the exec succeeded.

system functions like exec, but pauses until the other process is complete before returning control to your script. Likewise, qx// works like the one-argument form of system, but STDOUT is returned to your script in a string.

Frequently when you end up having routines in one script that you need to utilize in another, it's useful to put the "common" routines in a module, and call that module from both of your scripts. This is a lot more efficient than spawning off new processes to do sub-tasks.