使用awk查找数据的不连续性

时间:2011-05-01 06:34:09

标签: bash sed awk

使用awk,如何找出一系列数据的不连续性。 我有如下数据。

实施例: 输入数据:

shotline   shot
1001       1001
1001       1002
1001       1003
1001       1005
1001       1006
1001       1009
1002       1001
1002       1003

数据应该是:

缺少数据点:

1001     1004
1001     1007
1001     1008
1002     1002

1 个答案:

答案 0 :(得分:1)

这是一个有效的解决方案:

cat data | awk '{shotline = $1; if(shotline != last_shotline){last_shotline = shotline; last_shot = 1000;} shot = $2; while(shot != last_shot+1){ last_shot = last_shot+1; print shotline " " last_shot }; last_shot = shot;}'