【问题标题】:Unable to send email from a bash script无法从 bash 脚本发送电子邮件
【发布时间】:2014-02-25 04:26:04
【问题描述】:

我有一个脚本可以从特定的电子邮件地址发送电子邮件。邮件仍以服务器的用户名@主机名发送。

#!/bin/bash
# script to send simple email
# Email To ?
EMAIL="sending_to_address"
# Email text/message
EMAILMESSAGE="/mailmessage.txt"
/bin/mail -s "SUBJECT" "$EMAIL" < $EMAILMESSAGE -- -f from_email_address

请更正它,以便我可以使用 from_email_address 而不是主机名发送邮件。

【问题讨论】:

    标签: bash email backup


    【解决方案1】:
    #!/bin/bash
    # script to send simple email
    # Email To ?
    EMAIL="sending_to_address"
    # Email text/message
    EMAILMESSAGE="/mailmessage.txt"
    /bin/mail -s "SUBJECT" "$EMAIL" < $EMAILMESSAGE -- -f from_email_address
    

    您是否正在为您的局域网发送电子邮件?如果在外面,您是否转发端口? 除非这是一个学校项目,否则我会使用 PHP。

    【讨论】:

    • 我正在运行一个 backuppc 来备份我的服务器,这个脚本用于在完成备份后发送状态。邮件将发送到外部的公共电子邮件地址(gmail、exchange 等)。
    • 在这种情况下,您需要端口转发您的调制解调器。另请查看此人的回复:stackoverflow.com/questions/9038926/…
    • 我可以使用 sendmail 做同样的事情。但问题是我无法将文本文件的内容作为电子邮件的正文。如果我能弄清楚,就足够了。以下是我的发送邮件命令:/usr/sbin/sendmail destination_email_address &lt;&lt;EOFsubject:$SUBJECTfrom:source_email_addressecho "$EMAILMESSAGE"EOF 其中 EMAILMESSAGE=/tmp/message.txt;但它从不显示文本文件的内容,而只显示该文件的位置。
    • 使用 /tmp/message.txt 的内容设置一个变量,然后在 EMAILMESSAGE 中调用该变量。
    • 也可以试试这样的:mail -s "邮件主题" yourremail@email.com -a "Reply-To: "
    【解决方案2】:

    超级用户上有一个类似的帖子可以解决您的问题。 Check here.

    希望对你有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-04
      • 2016-05-05
      • 2021-03-16
      • 2011-09-16
      • 2011-04-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多