【发布时间】:2019-02-12 10:37:25
【问题描述】:
我配置了 crontab 以发送电子邮件和显示桌面通知。在以下脚本之后:
#!/bin/sh
ls /home/anis > /tmp/log.log
echo "---------------------$1-------------------" >> /tmp/log.log
info_and_email()
{
logtime=`date "+%Y/%m/%d %H:%M:%S"`
notify-send "$1"
echo "To:myemail@domain.com" > /tmp/report.txt
echo "From:anysrc@domain.com" >> /tmp/report.txt
echo "Subject: ------$1----- ($logtime)" >> /tmp/report.txt
ssmtp myemail@domain.com < /tmp/report.txt
}
info_and_email "$1"
如果我从 CLI 运行脚本,则脚本成功执行并显示通知并发送电子邮件,但如果从 crontab 执行脚本,我可以看到脚本以 ps 运行,但未发送电子邮件且未显示通知。
我错过了什么?
【问题讨论】:
-
运行
which ssmtp并复制ssmtp或type -P ssmtp的绝对路径