2012-04-11 2 views
0

Я использую sendmail на одном из своих серверов для отправки отчетов об ошибках. Я создаю этот отчет, добавляя строку, а затем я использую 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" % "[email protected]") 
    p.write("To: %s\n" % "[email protected]") 
    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) 
+1

Что вы подразумеваете под «признанием»? это лишает их адрес электронной почты? это запутанно, когда код, который вы даете, фактически не имеет вкладок. является «примерной строкой» в данных? –

+0

Да. Я отправляю sendMail (данные), где данные являются примерной вводной строкой. – jmnwong

ответ

1

как все выглядит на данный момент, эта линия рассматривается как заголовок. вам нужна пустая строка после заголовков:

def sendMail(data): 
    sendmail_location = "/usr/sbin/sendmail" # sendmail location 
    p = os.popen("%s -t" % sendmail_location, "w") 
    p.write("From: %s\n" % "[email protected]") 
    p.write("To: %s\n" % "[email protected]") 
    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 
+0

Это сделало. Благодарю. – jmnwong

Смежные вопросы