У меня есть два сценария Perl: один извлекает данные из одной системы и записывает их в файл CSV, а другой выполняет эти данные, выполняя серию файлов после того, как первый сценарий соберет список IP-адресов для отправки файлов.to.
Когда я запускаю это вручную в командной строке, я вижу результаты первой сгенерированной команды, получаю электронное письмо, а затем вижу последнюю команду, выполненную с результатами, и электронное письмо от этого,Но сегодня, когда cron запустил первый скрипт, я получил только электронное письмо со списком IP-адресов, а не результаты файлов, отправленных на хосты.Время, необходимое для выполнения команды, варьируется, но обычно это занимает 1-2 минуты.
Это последние несколько строк, которые запускаются в первом скрипте Perl.Электронное письмо отправляется с вложениями, если существуют узлы, которые соответствуют критериям извлечения, и после выполнения последняя строка выполняет отправку со ссылкой на выходной файл CSV, содержащий IP-адреса узлов.
system( "echo '' | mailx -s \"$payloademailsub\" -a $payloadoutputFile -a $wlsinfoFile $emails < /dev/null" );
}
else {
system( "echo '' | mailx -s \"$payloademailsubnodup\" $emails < /dev/null" );
}
system("/bin/bash /usr/application/co/bin/webLogicPayload.bash < /usr/application/co/reports/pushPayload/weblogicHosts.csv");
Этозапись cron.Исходная команда требуется для извлечения локальных пользовательских переменных, а app_setup является файлом, связанным с приложением.
0 15 * * 1-5 . $HOME/app_setup; source ~/.bashrc; $HOME/application/co/weblogicHostReport.pl
Если предположить, что это связано с cron, так как оно будет запускаться вручную, есть ли что-то, что я должен установить в cronзапись или изменение в сценарии Perl, которые помогут выполнить это полностью?