Серверный сценарий perl с необходимыми пакетами работает локально пользователем "my_user".
Но если я запускаю скрипт удаленно (ssh), мне нужно export PERL5LIB=/usr/local/share/perl/5.10.0/my_modules
перед вызовом скрипта perl, чтобы он заработал.
Почему это и как я могу обернуть это, чтобы избежать экспорта PERLIB каждый раз, когда мне нужно вызвать удаленный Perl-скрипт?
РАБОТАЕТ :
ssh my_user@remote_server "export PERL5LIB=/usr/local/share/perl/5.10.0/my_modules; /cgi-bin/my_perl_script.pl --option1 foo --option2 '*';"
НЕ РАБОТАЕТ :
ssh my_user@remote_server "/cgi-bin/my_perl_script.pl --option1 foo --option2 '*';"
возвращает:
Не удается найти my_package1.pm в @ INC
Это может быть скорее вопрос ssh, чем строгий вопрос perl: почему удаленный пользователь, выполняющий скрипт perl, не наследует свои локальные данные ENV.
Thx