Вам не нужно устанавливать какие-либо переменные окружения только для запуска exe. Все, что вам нужно сделать, это запустить exe-файл, используя его абсолютный путь или путь относительно каталога, в котором вы находитесь, когда выполняете сценарий perl. Например, если предположить, что это Windows (поскольку вы говорите об exe), если у вас есть структура каталогов, такая как:
C:
- dira
| - a.exe
- dirb
- dirc
- a.pl
и в командной строке вы запускаете:
C:\dirb>perl dirc\a.pl
тогда в вашем perl-файле вы должны использовать либо
`C:\\dira\\a.exe`;
или
`..\\dira\\a.exe`;
Если ваша командная строка:
C:\dirb\dirc>perl a.pl
тогда вы можете использовать
`C:\\dira\\a.exe`;
или
`..\\..\\dira\\a.exe`;
Обновление
файл test.pl:
$ENV{'PATH'}.= ':some/dir';
system('./testpath.pl');
файл testpath.pl:
open(FILE, '>>output.txt');
print FILE $ENV{'PATH'};
close(FILE);