如何在unix

时间:2015-05-31 13:31:47

标签: unix awk smtp html-email

我正在尝试通过附加到电子邮件正文来生成和发送html文件。我尝试使用awk生成并发送一个文件。例如。输入文件MARTINI有以下记录:

1554894,2015-04-16,00:21:52,processes.martini_gsicorptradeeventoutput.instancecount,0,1,UP
1554793,2015-04-15,22:03:52,processes.martini_gsicorptradeeventoutput.instancecount,2,0,DOWN 

我把这个awk放在一个名为HTML的文件中:

awk 'BEGIN {
    FS=","
    print  "MIME-Version: 1.0"
    print  "To:lijo@abc.com"
    print  "From:lijo@abc.com"
    print  "Subject: Health check"
    print  "Content-Type: text/html"
    print  "Content-Disposition: inline"
    print  "<HTML>""<TABLE border="1"><TH>Ref_id</TH><TH>EOD</TH><TH>Time</TH><TH>Process</TH><TH>Desc</TH><TH>Instance</TH><TH>Status</TH>"
    }
    {
    printf "`<TR>`"
    for(i=1;i<=NF;i++)
    printf "`<TD>%s</TD>`", $i
    print "`</TR>`"
    }
END {
    print "`</TABLE></BODY></HTML>`"
} ' /home/martini > /home/martini_html

稍后我通过电子邮件cat MARTINI_HTML | /usr/sbin/sendmail -t发送此文件。这一直有效。但现在我有2个新任务 如何转换多个文件将MARTINI1,MARTINI2等等转换为html文件以及如何将它们作为单独的表块附加到电子邮件正文中而不是作为单个表。假设附加了两个文件,那么电子邮件正文应该与附加的图像类似。 Email_Body

1 个答案:

答案 0 :(得分:0)

以下是如何做到的:作弊。

给自己发送一封包含两个附件的电子邮件。将原始电子邮件用作模板。这样你就可以跳过关于MIME类型和诸如此类的所有发现。