2016-04-11 106 views
0

當前腳本

我有一個文本文件,該文件獲取服務器信息是否向上/向下與像條目給定的時間段內:如何更改基於列值列的背景顏色在HTML

Server1 UP DOWN UP Down UP UP Down 
Server2 Down UP Down Up UP Down Down 

這是將上述文本文件轉換爲HTML頁面的shell腳本。

awk 'BEGIN{print "<html>\n<head>\n <style>\n table,th,td \n{\n border:1px solid black;border-collapse:collapse;n}\n</style>\n</head>\n<Body>\n<table><tr></tr> " 
    } 
    { 
    print "<tr>" 
    for(i=1;i<=NF;i++) 

     print "<td>" $i"</td>" 
    print "</tr>" 
    } 
    END{ 
    print "\n</table>\n</Body>\n</html>\n" 
    }' testresult.txt > /var/www/html/test.html 

問題:

而轉換文本內容爲HTML,我需要的HTML細胞背景時,該條目是「向下」當服務器是「UP」是彩色的,以紅色和綠色

試過:

我試圖在for循環中包含一個If語句,以便將文本值與UP/Down進行匹配。但是徒勞無功。請您建議我失蹤的地方,還有其他方法可以嘗試嗎?

+0

可能你寫你的shell 「如果命令」 在這裏。你可以很容易地用js代碼解決它,但是如果你正確地執行if命令,那麼如果你給​​元素提供了一個樣式或類,那麼應該很容易。 –

+0

Hi @KOrroshSh:如果[if i ==「UP」] ..(然後做動作) 打印出來,如果在for循環後如下所示:for(i = 1; i <= NF; i ++) print 「​​」$ i「」 print「」 – user3510848

回答

0

更換

for(i=1;i<=NF;i++) 

    print "<td>" $i"</td>" 

for(i=1;i<=NF;i++) 

    print "<td class = 'style" $i "'>" $i"</td>" 

然後添加到您的CSS

.styleDown {background-color: red;} 
.styleUP {background-color: green;}