用于扣除列的周期

时间:2014-02-03 12:47:55

标签: bash for-loop awk

我有一个问题,我想从文件中的$ 2列中扣除$ 3,但是与文件中的所有行分开,并将所有行的结果写入除以/ n。你可以帮帮我吗? 我创造了这个,但它不对。

for i  
do awk'{(NR = i , i++) print($3-$2)}'; done

INPUT文件:

chr1 10 12

chr1 14 19

chr1 22 96

OUTPUT文件:

2      
5      
74     

4 个答案:

答案 0 :(得分:3)

不需要循环,只需执行

awk '{ print $3-$2 }' file

答案 1 :(得分:2)

此行应该有效:

awk '{$0=$3-$2}7' input

答案 2 :(得分:2)

怎么样

awk '{print $3 - $2}' test.txt

这将从第三列中减去第二列,并为每一行写下结果。

答案 3 :(得分:1)

由于已接受一个答案,但可能两者都没有注意到源文件中有空行,使用这些命令,输出将有一些0行。

awk '{print $3 - $2}' file

2
0
5
0
74

脚本应更新为:

awk 'NF>2{print $3 - $2}' file