in reply to Running a shell script from Perl, and making that shell script accept input from perl script.

In the most general case, you want some IPC. In your specific case, the pipe-open is likely the easiest way to submit jobs, as you're not interested in the output of your job launcher:

my $queue = './'; open my $submit, '|-', $queue or die "Couldn't launch queue submission '$queue': $!/$?"; ... for my $job (@jobs) { print {$submit} "$job\n"; };