我有一個具有以下數據shell腳本來讀取每一行,並運行條件
120
140
200
110
200
200
120
90
100
我想讀這個文件並比較各行(序號)200,如果它穿過一個日誌文件200 - 那麼它必須比較下一個單詞,直到連續5次超過200,那麼它必須發送警報,否則腳本必須結束。
請幫
感謝,
我有一個具有以下數據shell腳本來讀取每一行,並運行條件
120
140
200
110
200
200
120
90
100
我想讀這個文件並比較各行(序號)200,如果它穿過一個日誌文件200 - 那麼它必須比較下一個單詞,直到連續5次超過200,那麼它必須發送警報,否則腳本必須結束。
請幫
感謝,
你是說要檢測當連續5行中包含大於200的值?如果是這樣的:
awk '{a = $1 > lim ? a + 1 : 0}
a > seq {print "alert on line " NR}' lim=200 seq=5 input
目前尚不清楚你真正想要的東西,也許你想使用>=
,而不是在上面>
。
這只是通過名爲input
的文件讀取並檢查數字是否大於200(給出的值爲lim
)。如果是,則增加一個計數器。當該計數器大於seq
時,它會打印一條消息。
連續5行(超過200)可以在中間或結束。我們需要找出那些 - 如果它們是 - 那麼它應該說True或者False。如果可能的話 - 我們需要找到5中最高的一個 – Ravikanth
如果5個連續的數字超過200個,它必須發送警報。 – Ravikanth