mail [email protected] < mailfile
torna o corpo do email o conteúdo do arquivo. Se isso não está funcionando para você, então talvez você tenha que escrever o seu próprio.
Isso é retirado da documentação da biblioteca do Python 2.7 :
# Import smtplib for the actual sending function
import smtplib
# Here are the email package modules we'll need
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart
COMMASPACE = ', '
# Create the container (outer) email message.
msg = MIMEMultipart()
msg['Subject'] = 'Our family reunion'
# me == the sender's email address
# family = the list of all recipients' email addresses
msg['From'] = me
msg['To'] = COMMASPACE.join(family)
msg.preamble = 'Our family reunion'
# Assume we know that the image files are all in PNG format
for file in pngfiles:
# Open the files in binary mode. Let the MIMEImage class automatically
# guess the specific image type.
fp = open(file, 'rb')
img = MIMEImage(fp.read())
fp.close()
msg.attach(img)
# Send the email via our own SMTP server.
s = smtplib.SMTP('localhost')
s.sendmail(me, family, msg.as_string())
s.quit()
A única mudança real aqui é que você usaria a classe email.mime.image.MIMEApplication em vez de MIMEImage ... e, claro, alteraria os campos para, de e assunto para algo apropriado.