mutt 不作为包装在 bash 脚本中的 cron 作业运行

mutt 不作为包装在 bash 脚本中的 cron 作业运行

mutt 正确运行如下:

$ cat /home/user/test
this is a test

$ mutt -s "test" [email protected] </home/user/test

如果我将其放入 bash 脚本中(存储在tmp1):

#!/bin/bash
/usr/bin/mutt -s "test" [email protected] </home/user/test

并在 cron 中:

00 22 * * * user /bin/bash /home/user/tmp1

我看到脚本正在执行,但 mutt 没有发送任何电子邮件:-/

还添加了 mutt -F 选项:

mutt -F /home/user/.muttrc

答案1

我也遇到了同样的问题mutt

对我来说,事实证明是mutt试图从[电子邮件受保护],其中用户名是我的机器用户名。

我已将我的 Gmail 帐户设置为我的.muttrc file.我检查了文件/var/log/syslog发现了这一点。

我通过使用msmtp而不是解决了我的问题mutt。 arch linux wiki 提供了合适的安装参数的示例。缺点是它不允许附件,尽管可能有一些方法可以解决这个问题。

https://wiki.archlinux.org/index.php/msmtp

下面的命令行在 cron 中适用于我:

cat test.file | msmtp --from=default -t [email protected]

这将发送一封电子邮件,但To盒子和Subject盒子将无法很好地呈现(如果有的话)。如果这不重要,那就太好了。当它出现时,我将它们添加到 的开头test.file,如下所示:

To: [email protected]

Subject: subject line

test.file contents

相关内容