1
我有一個製表符分隔文件(無標題),我想採取第3列和第2列的區別,然後將它們添加到一起。awk linux差異並添加製表符分隔的列文件
即,
col1\tcol2\tcol3\tcol4
hi\t10\t100\t0.4
bye\t150\t400\t5.6
其結果將是:(100-10)+(400-150)= 340
如何將我使用AWK這樣操作的一個行?
謝謝。
我有一個製表符分隔文件(無標題),我想採取第3列和第2列的區別,然後將它們添加到一起。awk linux差異並添加製表符分隔的列文件
即,
col1\tcol2\tcol3\tcol4
hi\t10\t100\t0.4
bye\t150\t400\t5.6
其結果將是:(100-10)+(400-150)= 340
如何將我使用AWK這樣操作的一個行?
謝謝。
awk '{ total += $3 - $2 } END { print total }' file
在這裏你去:
awk 'BEGIN{FS="\t"} {sum+=($3-$2)} END{print sum}' input_file
說明:
BEGIN{FS="\t"}
:之前我們看到任何線路,設置輸入分隔符使用顯式標籤(FS
代表字段分隔符) ,如果你的一個領域有空間。默認情況下,awk
使用製表符和空格作爲FS
。{sum+=($3-$2)}
:對於每一行的讀取,到第二場第三之間添加差sum
END{print sum}
:一旦所有的行被閱讀,打印sum
input_file
:指定輸入文件名awk
作爲參數;保存一隻貓。