Как я могу контролировать версию Perl, используемую при отправке сеточных заданий?

Я работаю с SGE (Sun Grid Engine), чтобы отправлять задания в сетку. Я также используюperlbrew управлять моими установленными версиями Perl. Я написал несколько короткихsh сценарии, которые я использую для запуска сценария Perl, для которого требуется определенная версия Perl (5.12.2), которая выглядит примерно так:

#!/bin/bash
#$-S /bin/bash

source /home/dave/.bash_profile
/home/dave/perl5/perlbrew/bin/perlbrew switch perl-5.12.2

/home/dave/scripts/proc_12.pl --in=/home/dave/in/in.store --dir=/home/dave/in/dir2 --params=/home/dave/in/params.p

Теперь, когда я отправляю одну работу, все работает нормально, но когда я отправляю много, я начинаю получатьperlbrew связанные сообщения об ошибках, такие как:

ln: creating symbolic link `current' to `perl-5.12.2': File exists
ln: creating symbolic link `/home/dave/perl5/perlbrew/bin/cpan' to `/home/dave/perl5/perlbrew/perls/current/bin/cpan': File exists
ln: creating symbolic link `/home/dave/perl5/perlbrew/bin/cpan2dist' to `/home/dave/perl5/perlbrew/perls/current/bin/cpan2dist': File exists
ln: cannot remove `/home/dave/perl5/perlbrew/bin/cpanp': No such file or directory
ln: cannot remove `/home/dave/perl5/perlbrew/bin/enc2xs': No such file or directory
ln: cannot remove `/home/dave/perl5/perlbrew/bin/find2perl': No such file or directory

Так что я думаю,/home/dave/perl5/perlbrew/bin/perlbrew switch perl-5.12.2 линия вызывает проблемы.

Что я могу сделать?

Как я могу заставить мой скрипт работать, используя perl-5.12.2 (по умолчанию 5.8.8)?

Ответы на вопрос(2)

Ваш ответ на вопрос