【问题标题】:Bash script Ubuntu mailxBash 脚本 Ubuntu mailx
【发布时间】:2011-04-26 14:01:34
【问题描述】:

我想在我的脚本创建新文件时从 bash 脚本发送电子邮件。

这是我目前写的代码:

SUBJECT="MyNotifier"
TO="nobody@gmail.com"

echo "mail body. Something happened here.... hope you get this!" | mailx -s "$SUBJECT" "$TO" 

关键是我没有收到任何错误消息,也没有邮件。

我只下载并安装了 mailx(使用 sudo apt-get 命令 - 对不起,我是菜鸟)

我根本没有配置。

我做错了什么? 提前致谢

【问题讨论】:

  • 你能做echo $? 看看你得到什么返回值吗?运行该命令时,还要查看您的邮件日志文件。

标签: email bash ubuntu mailx


【解决方案1】:

很可能您的 sendmail/exim 服务器未配置 - 因此电子邮件被发送到 MTA(邮件传输代理)但留在队列中。如果您发出mailq 命令,您应该会看到当前等待发送的邮件列表——如果队列中有邮件,那么您需要配置您的 MTA,如果 mailq 中没有邮件,那么您的电子邮件已发送但可能被接收者丢弃(发生这种情况的原因有很多——你可以在谷歌上找到很多资源,但是一个非常常见的问题是如果你的发件人域没有映射回你发送的 ip一封来自)的电子邮件。

【讨论】:

  • 我做了一个mailq,得到了这个mailq:致命:打开/etc/postfix/main.cf:没有这样的文件或目录
  • 是的,您的 mta 似乎未配置。你用的是sendmail还是exim4?我使用过 exim4,因为我发现它更易于配置——设置过程也有一些配置屏幕——只是 sudo apt-get install exim4
  • 感谢您的回复。我都试过了,但都失败了。由于这个脚本是大学作业,它将在实验室电脑上展示,我将尝试在那里执行我的脚本,这样我就不必设置我的 ubuntu ...(我想但我会花时间)我将发布任何新问题..
  • 另一件要记住的事情:mailx 是邮件的别名
  • 谢谢大家!!!它在正确设置邮件服务器的大学电脑中运行良好!我按预期收到了消息。
猜你喜欢
  • 2023-03-19
  • 2012-01-28
  • 2013-03-14
  • 2022-12-16
  • 2017-01-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多