Команда mailx странное поведение от cron
У меня есть скрипт, который перенаправляет вывод df в файл, а затем отправляет его по электронной почте. Команда mail настроена следующим образом:
/usr/bin/mail -s "Subject" -r from@nowhere.com toaddress@somewhere.com < /tmp/diskSpace.txt
Все работает правильно, когда я запускаю этот скрипт от имени пользователя root, но у меня странное поведение, когда я запускаю его из корневого файла crontab. В этом случае сообщение доставляется, но содержимое /tmp/diskSpace.txt прикрепляется к электронному письму, а не является его телом. Я даже попытался скопировать корневую среду, в которой работает cron, как:
env `cat root-env-saved-to-this-file` /bin/bash mailscript.sh
но ничего не изменилось. Любое предложение, или я должен просто справиться с этим с помощью почтовых библиотек Perl?
1 ответ
Попробуй добавить это перед работой cron.
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Он покажет пользователю cron, где находятся исполняемые каталоги.