我有一个制表符分隔的文本文件,如下所示:
1 10019 10020 rs775809821
1 10055 10055 rs768019142
1 10107 10108 rs62651026
1 10108 10109 rs376007522
1 10128 10128 rs796688738
1 10138 10139 rs368469931
1 10144 10145 rs144773400
1 10146 10147 rs779258992
1 10149 10150 rs371194064
1 10165 10165 s796884232
我想提取第 2 列中的值等于第 1 + 1 列中的值的行,并将它们定向到一个新文件。因此,对于上面的示例,所需的输出将是:
1 10019 10020 rs775809821
1 10107 10108 rs62651026
1 10108 10109 rs376007522
1 10138 10139 rs368469931
1 10144 10145 rs144773400
1 10146 10147 rs779258992
1 10149 10150 s371194064
我认为这可以使用 awk 来完成,但我不知道从哪里开始。任何投入将不胜感激。
最佳答案
awk '$3 == $2 + 1' < input > output
关于shell - 提取其中一列中的值等于另一列中的值 +1 的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37037534/