0

我在我的一台服务器上使用 sendmail 来发送错误报告。我通过附加到一个字符串来构建此报告,然后我使用 sendmail 发送电子邮件。但是,sendmail 无法识别字符串中的选项卡。我想知道如何解决这个问题?

def sendMail(data):
     sendmail_location = "/usr/sbin/sendmail" # sendmail location
     p = os.popen("%s -t" % sendmail_location, "w")
     p.write("From: %s\n" % "test@example.com")
     p.write("To: %s\n" % "test2@example.com")
     p.write("Subject: the subject\n")
     p.write(data)
     status = p.close()
     if status != 0:
         print "Sendmail exit status", status

一个示例字符串是:

data = "%d\t%s\t%s\n" % (count, message, message2)
4

1 回答 1

1

从目前的情况来看,该行被视为标题。标题后需要一个空行:

def sendMail(data):
     sendmail_location = "/usr/sbin/sendmail" # sendmail location
     p = os.popen("%s -t" % sendmail_location, "w")
     p.write("From: %s\n" % "test@example.com")
     p.write("To: %s\n" % "test2@example.com")
     p.write("Subject: the subject\n")
     p.write("\n")                                 # blank line
     p.write(data)
     status = p.close()
     if status != 0:
         print "Sendmail exit status", status
于 2012-04-11T21:05:45.060 回答