【发布时间】:2019-06-29 19:33:39
【问题描述】:
我正在尝试在 Red-hat Linux 环境中通过 cronjob 在 bash shell 脚本上运行 sendmail 命令。当手动运行此脚本时,我可以成功运行此脚本,并且除了邮件部分之外,shell 中的所有其他作业都可以正确运行。我从未使用过 sendmail 并且不确定是否需要重新构建它的呈现方式。
我试过mail和mailx。我可以发送电子邮件,但日志文件包含许多奇怪的字符,它将文本格式放入我不想要的电子邮件的 att00001.bin 附件中。 sendmail 命令似乎是唯一一个在手动运行时不发送附件的命令。其他 cron 作业正常工作,并且能够发送电子邮件,只是日志文件中没有特殊字符。
echo '##################################################'
date
echo '##################################################'
#Run Script and write to log file
/comp/gfb281m.sh > /usr/local/bin/oracle/getload/getload.log 2>&1
#Send log file to developer group
(echo "Subject:GetLoad Shell"; echo; cat
/usr/local/bin/oracle/getload/getload.log) | sendmail -v
exampleEmail@outlook.com exampleEmail2@mail.mil
当运行这个 cron 作业时,应该将 getload.log 文件的内容发送给 a 组用户。
【问题讨论】:
-
在 RedHat 上 cron 登录的任何位置的任何消息?
-
愚蠢的我,我只是告诉 cron 在运行时给自己写一个日志文件,发现它不知道在哪里可以找到 sendmail 命令。感谢您对日志的提示,遗憾的是我应该知道这一点。
标签: linux scripting cron sendmail