0
Я просто пишу перл программа для целей автоматизации с помощью CronНе работает программа perl для автоматизации cron?
мой хрон является
*/30 * * * * perl /path/to/cron.pl
cron.pl
#!/usr/bin/perl
use strict;
use warnings;
`/usr/bin/perl /path/to/run.pl`;
Внутри кода я запускаю другую программу на языке Perl, используя обратно клеща.
run.pl
#!/usr/bin/perl
use strict;
use warnings;
open(FL,">text.txt") or die $!;
print FL "hi";
close FL;
Всякий раз, когда я бегу cron.pl он создал файл "text.txt". Но cron запускает программу cron.pl, но run.pl не запускается. Может ли кто-нибудь сказать мне, что я сделал неправильно в коде?
Обязательный комментарий: всегда ставьте 'use strict;' и 'use warnings;' в верхней части каждого скрипта Perl. Вероятно, ваша проблема связана с использованием относительного пути при вызове 'run.pl'. Попробуйте использовать абсолютный путь к интерпретатору Perl и сценарию: '/ usr/bin/perl/absolute/path/to/run.pl'; – bart
@bart Спасибо за ваш комментарий. Я использую строгое использование и использование предупреждения, после чего я добавил абсолютный путь в эту программу, но все же он не работает. – SSN
Как знать, run.pl не выполняется? Этот скрипт открывает дескриптор файла в режиме чтения, но следующая строка пытается его записать, что не сработает. –