If all your .sh file does it set environmental vars in
a static way (no conditional statments in the .sh, etc...)
you could just read and parse the .sh file to set
your %ENV vars.
open F,"<conf.sh" or die $!;
while(<F>){
chomp;
if($_=~/([\w\_]+)\s*\=\s*(.+?)\s*$/){
$ENV{$1}=$2;
}
}
close F;