I am receiving the below output in text format. The output is converted to HTML table using the code mentioned below
output in text
LogDate DayOfWeek/Hours _0_ _1_ _2_ _3_ _4_ _5_ _6_ _7_ _8_ _9_ _10_ _11_ _12_ _13_ _14_ _15_ _16_ _17_ _18_ _19_ _20_ _21_ _22_ _23_
18/05/21 Mon 85.6 51.7 28.2 33.6 28.2 30.8 24.5 20.2 53.3 96.9 80.9 92.0 44.7 84.7 57.7 65.7 23.0 31.1 20.5 17.7 20.1 14.7 46.6 67.1
Task to be achieved
I would like to highlight only these value in yellow, red or green based on condition (75 to 100 red) (40 to 74 yellow) and (0 to 39 green). I am not able to achieve the same
85.6 51.7 28.2 33.6 28.2 30.8 24.5 20.2 53.3 96.9 80.9 92.0 44.7 84.7 57.7 65.7 23.0 31.1 20.5 17.7 20.1 14.7 46.6 67.1
Can someone please help me?
Here is the code am using
awk '
BEGIN {
print "From: "
print "To:"
print "MIME-Version: 1.0"
print "Content-Type: text/html"
print "Subject: CPU Utilization Report"
print "<html><body></br></br>The report provides overall Percentage Of CPU utilization Hour wise on Production system.</br></br></br>"
print "<table border=1 cellspacing=1 cellpadding=1>"
}
!/^#/ && !/^S/ {
print "<tr>"
for ( i = 1; i <= NF; i++ )
{
if ($i <=75 && $i <=100 )
print "<td> <b><FONT COLOR=RED FACE="verdana"SIZE=9 ></b>" $i "</td>"
else
if ($i <=40 && $i <=74 )
print "<td> <b><FONT COLOR=Yellow FACE="verdana"SIZE=9 ></b>" $i "</td>"
else
print "<td> <FONT COLOR=GREEN FACE="verdana"SIZE=9 >" $i "</td>"
}
print "</tr>"
}
END {
print "</table></body></html>"
}
' /Reports/output/Output.txt | /usr/sbin/sendmail -t