使用awk计算当前行列减去前一行列

calculate current line column less previous line column using awk

我的输入

a 9
b 2
c 5
d 3
e 7

期望的输出(当前行第 2 列 - 上一行第 2 列)

a 9
b 2 -7
c 5 3 
d 3 -2
e 7 4

说明

a 9
b 2 -7 ( 2-9 = -7 )
c 5 3  ( 5-2 = 3 )
d 3 -2 ( 3-5 = -2 )
e 7 4  ( 7-3 = 4 )

我试过了没有成功

awk '{ print , , - $(NR-1) }' input

我想要一个 awk 代码来生成一个附加列,其中包含对第 2 列中当前行减去上一行的去计算

你可以试试这个awk

$ awk 'NR==1{ print [=10=] } NR>1{ print [=10=], - pre } { pre= }' file
a 9
b 2 -7
c 5 3
d 3 -2
e 7 4