[Moscow.pm] FindBin и cron

Vladimir Timofeev vovkasm на gmail.com
Пт Авг 26 11:31:34 PDT 2011


2011/8/25 Василий Рябов <me на ryvasy.net>:
> Всем привет!
>
> Напоролся на неадекватную работу FindBin при вызове скрипта из cron.
>
> use FindBin qw( $Bin );
>
> Вызываю скрипт из консоли - получаю верно заполненную переменную $Bin.
> Вызываю из cron - переменная не определена. Документация к FindBin о таких
> особенностях молчит.
> Проблема наблюдается в Solaris на Perl 5.8.4. Локально (Arch Linux, Perl
> 5.14) все работает правильно.
> Кто-нибудь сталкивался? Как бороться?
Не сталкивался... специальная платформа... а такой версии перла вообще
не видел в работе. Но.
В perl588delta есть вот такое изменение в FindBin:

FindBin upgraded to version 1.47
Now works better with directories where access rights are more
restrictive than usual.

А это кусок диффа оттуда:
-$VERSION = "1.44";
+$VERSION = "1.47";
+
+sub cwd2 {
+   my $cwd = getcwd();
+   # getcwd might fail if it hasn't access to the current directory.
+   # try harder.
+   defined $cwd or $cwd = cwd();
+   $cwd;
+}

Я не уверен, что поможет, но можно быстро проверить.
Запустите perl -MCwd=getcwd -e 'print getcwd()?"ok":"not ok"' из
консоли и его же из крона.

>
> Спасибо!
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>



-- 
Vladimir Timofeev <vovkasm на gmail.com>


Подробная информация о списке рассылки Moscow-pm