我有下面的纯文本文件,我有一些结果,为了邮件导致html表格格式 我已经写了下面的脚本,它的工作很好。Unix awk模式匹配和打印行
cat result.txt
Page 2015-01-01 2000 <br>
Colors 2015-02-01 3000 <br>
Landing 2015-03-02 4000 <br>
#!/bin/sh
LOG=/tmp/maillog.txt
RES=/tmp/result.txt
html_log() {
awk ' BEGIN {
print "<html><body><table border=1 cellspacing=0 cellpadding=3>"
print "<tr>"
print "<td><b>Metric</b></td>";
print "<td><b>Date</b></td>";
print "<td><b>count</b></td>";
print "</tr>"
} {
print "<tr>"
print "<td>"$1"</td>";
print "<td>"$2"</td>";
print "<td>"$3"</td>";
print "</tr>"
} END {
print "</table></body></html>"
} ' $RES >> $LOG
}
#Function for sending mails
dd_mail() {
(
echo "From:xyz "
echo "To: xyz"
echo "MIME-Version: 1.0"
echo "Subject: Emp rpt"
echo "Content-Type: text/html"
cat $LOG
) | sendmail -t
html_log
dd_mail
exit 0
===============
现在的问题是很少这些3个度量重复(下面参考)中,如果它重复我想识别 并生成单独的html表,这样当我发送电子邮件给用户时,他们可以看到2个单独的html表。
cat result.txt
Page 2015-01-01 2000
Colors 2015-02-01 3000
Landing 2015-03-02 4000
Page 2015-01-01 1000
Colors 2015-02-01 2000
Landing 2015-03-02 9000
我试过模式匹配和打印线,但没有我的想法的精选合作可能有人帮助我在此。
感谢