Shell代码:
msg="body of the mail"
echo "$msg" | mailx -s "ERROR" udhai
Python代码:
msg="body of the mail"
subprocess.call(msg + " | mailx -s 'ERROR:' udhai",shell=True)
当我执行我的shell脚本时,我收到电子邮件到udhai帐户, 邮件(邮件正文)和主题(“错误:”)。
但是在我的python代码中,我只收到了 的电子邮件。
如何收到包含主题和消息的电子邮件。
答案 0 :(得分:2)
您可以尝试通过以下方式替换您的流程调用:
subprocess.call("echo '"+ msg + "' | mailx -s 'ERROR:' udhai",shell=True)
否则您可以通过以下方式更改它:
ps = subprocess.Popen(('echo', msg), stdout=subprocess.PIPE)
output = subprocess.check_output(('mailx', "-s 'ERROR:' udhai"), stdin=ps.stdout)
ps.wait()