2011-04-26 70 views
0

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

这是迄今为止我所编写的代码:

SUBJECT="MyNotifier" 
TO="[email protected]" 

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

关键是我没有得到任何错误形式交往既不邮件。

我只下载并instaled的mailx(与命令和apt-get命令 - 请原谅我小白)

我还没有在所有配置它。

我在做什么错? 在此先感谢

+1

你可以做'echo $?',看看你得到了什么样的返回值吗?在运行该命令时,还要查看邮件日志文件。 – anubhava 2011-04-26 14:08:44

回答

1

很可能您的sendmail/exim服务器未配置 - 因此,这些电子邮件正在发送到MTA(邮件传输代理),但仍留在队列中。如果您发出mailq命令,您应该看到当前正在等待发送的邮件列表 - 如果队列中有邮件,那么您需要配置您的MTA,如果mailq中没有邮件,那么您的邮件已发送但是可能会被接收方丢弃(这可能会有很多原因 - 你可以在google上找到很多资源,但是很常见的一种情况是,如果你的发件人域名没有映射回你发送的邮件地址从)。

+0

我做了一个mailq,并得到这个mailq:致命:打开/etc/postfix/main.cf:没有这样的文件或目录 – George 2011-04-26 14:09:10

+0

是啊看起来像你的MTA没有配置。你使用的是sendmail还是exim4?我使用了exim4,因为我发现它更容易配置 - 安装过程也有一些配置屏幕 - 只是'sudo apt-get install exim4' – Liv 2011-04-26 14:13:00

+0

感谢您的回复。我试了两次,但都失败了。 由于这个脚本是一个大学作业,它会在实验室中呈现,我将尝试在那里执行我的脚本,以便我不必设置我的Ubuntu ...(我想但我运行我们的时间) 我会发布任何新的问题.. – George 2011-04-26 14:19:35