我有這個表表計算依賴於第一列
0 56 56
0 45 100
0 70 80
60 90 90
0 100 200
0.1 200 300
在這個表,我想通過 awk
計算的col2
和col3
價值取決於col1
值:如果col1 < 60
開始計算col2
和 col3
如果col1 >= 60
的值,則停止並開始新的計算並將值放在新的列上,比如說col4
和col5
。
對於行,其中在第1列的值小於60時,這些值在2列和第3應該被添加到單獨的款項。當列1中的行值爲60或更大時,打印第2列和第3列的總和並重新歸零總和,然後打印讀入的行。在輸入結束時,打印第2列的剩餘總和和3.
任何人都可以幫我這個嗎?
輸出看起來像
col4 col5
171 236 first calc
60 90 stop
300 500 sec calc
你可以修改你想要的輸出與所有列? – haifzhan
你的要求是無法解釋的 - 你需要解釋你做得更清楚。看起來您可能希望爲列1包含值小於60的行輸出第2列和第3列的總和。當您在列1中遇到值爲60或更大的行時,打印先前行的總和並重新設置總數,並打印讀入的行。在文件末尾,打印前一行的總和。這是你的想法嗎? –
Jonathan Leffler謝謝你,這正是我想要的 – user1306006