LINUX.ORG.RU

Cron + Perl


0

0
Запускаю перловый скрипт из крона строкой (от рута): */2 * * * * /usr/bin/perl /usr/local/traffic/store >/tmp/output В начале скрипта несколько команд которые перемещают файлы, в конце "print "Done!";" Всё что в `` он запускает, и в файле output обнаруживаю только done, хотя там должно быть не только это, как будто опускает все остальные команды. Может кто знает в чём дело?
anonymous
ко всем ли командам в `` установлена переменная окружения $PATH. По умолчанию в кроне она вообще не установлена, поэтому лучше писать полные пути к выполняемым в скрипте файлам
anonymous
()
Ээээ... А когда руками пускаешь - ты все это видишь? Давно перлом не занимался, но по моему оно тебе вывод и не должно отдать. Только через pipe и самому вывалить.
Nefer
()
Когда руками всё отлично пашет, а вот через крон никак
anonymous
()
Хмм... Попробуй в самом начале поставить переменную PATH как у тебя в шелле. Для эксперимента. Если заработает - проверяй где у тебя используются не полные пути. Опять же. Для эксперимента запусти скрипт не из текущей директории. А, например, из корня.
Nefer
()
Попробуй использовать в первой строке скрипта ключ -w, типа #!/usr/bin/perl -w ну и еще можно попробовать подобавлять в концах строк: || die "An error occured: $!"; Тогда если что не так, оно все сообщения об ошибках будет валить в почту тому чей кронтаб выполняет скрипт.
Susanin
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.