Скрипт на Perl-е должен прочитать конфигурационный файлик "tmp.conf", когда писал скрипт все нормально работало и первые несколько раз работало, теперь процесс убивается из - за того, что не возможно открыть этот файлик, вроде как ничего не менял, да и скрипт работал же некоторое время нормально, теперь не пойму в чем дело. Может с подобным кто-то встречался.open (tmp,"<tmp.conf") or die;
>Скрипт на Perl-е должен прочитать конфигурационный файлик "tmp.conf", когда писал скрипт все
>нормально работало и первые несколько раз работало, теперь процесс убивается из
>- за того, что не возможно открыть этот файлик, вроде как
>ничего не менял, да и скрипт работал же некоторое время нормально,
>теперь не пойму в чем дело. Может с подобным кто-то встречался.
>
>
>open (tmp,"<tmp.conf") or die;убери die - не будет убиваться
>Скрипт на Perl-е должен прочитать конфигурационный файлик "tmp.conf", когда писал скрипт все
>нормально работало и первые несколько раз работало, теперь процесс убивается из
>- за того, что не возможно открыть этот файлик, вроде как
>ничего не менял, да и скрипт работал же некоторое время нормально,
>теперь не пойму в чем дело. Может с подобным кто-то встречался.
>
>
>open (tmp,"<tmp.conf") or die;попробуй:
open(tmp, "<tmp.conf") or die("Can't open file: $!");
ошибку в студию!
>Скрипт на Perl-е должен прочитать конфигурационный файлик "tmp.conf", когда писал скрипт все
>нормально работало и первые несколько раз работало, теперь процесс убивается из
>- за того, что не возможно открыть этот файлик, вроде как
>ничего не менял, да и скрипт работал же некоторое время нормально,
>теперь не пойму в чем дело. Может с подобным кто-то встречался.
>
>
>open (tmp,"<tmp.conf") or die;
Под каким пользователем работает скрипт?
Есть ли права на чтение к этому файлу?
не появилось ли в скрипте диеркив chdir и вообще как остоят дела с путями?
Конструкция open (tmp,"<tmp.conf") в линуксе является не совсем корректной, ибо если в винде рабочим каталогом является тот, где запускаемая программа лежит, то в линуксе - тот в котором ты находишься.А в случае, если это автостарт - то рабочим каталогм является корневой.
И все пути к файлам рекомендуется указывать полные. от корневого каталога.
>А в случае, если это автостарт - то рабочим каталогм является корневой.cron можно считать автостартом ?! at ? И что вообще такое автостарт в Вашем понимании?
>>А в случае, если это автостарт - то рабочим каталогм является корневой.
>
>cron можно считать автостартом ?! at ? И что вообще такое автостарт
>в Вашем понимании?Автостарт это то что запускается вместе с системой.
Да, в случае с кроном нужно указывать асболютный путь.
есть 2 варианта.
либо объявить некую переменную, например $path и указать в ней путь к файлу
и окрывать его тогда open (F, "$path"."/filename");
или в скрипте дать инструкцию chdir($path) и тогда все будет работать без путей.
>>>А в случае, если это автостарт - то рабочим каталогм является корневой.
>>
>>cron можно считать автостартом ?! at ? И что вообще такое автостарт
>>в Вашем понимании?
>
>Автостарт это то что запускается вместе с системой.Что-то очень не похоже на правду.
>Да, в случае с кроном нужно указывать асболютный путь.
>есть 2 варианта.
>либо объявить некую переменную, например $path и указать в ней путь к
>файлу
>и окрывать его тогда open (F, "$path"."/filename");
>или в скрипте дать инструкцию chdir($path) и тогда все будет работать без
>путей.В crontab'e (cd /path/to/dir && /path/to/script) - и получаем независимость скрипта от расположения файла.
ps: вообще это бессмысленный разговор. Я лишь хотел отметить, что такого понятия "как автостарт" в *nix в принципе не существует. В остальном я полностью согласен.