【发布时间】:2016-11-18 22:13:15
【问题描述】:
这可能在某个地方得到了回答,但我探索的东西不符合我的需要。
我想从一个文件 (FILE1) 中读取不同的字段并将其传递给 awk 脚本,该脚本可以从另一个文件 (FILE2) 中提取这些字段。
文件1
1 156202173 156702173
2 26915624 27415624
4 111714419 112214419
从该文件中读取行并将其传递给以下脚本
awk ' BEGIN {FS=OFS="\t"};
{if ($1==$1 && $2>= $2 && $2<= $3 ) {print $0}}' FILE2 > extracted.file
FILE2 看起来像这样;
1 156202182 rs7929618
16 8600861 rs7190157
4 111714800 rs12364336
12 3840048 rs4766166
7 20776538 rs35621824
因此,awk 脚本仅在与第一个字段匹配且值介于第二个和第三个字段之间时打印。 预期输出是
1 156202182 rs7929618
4 111714800 rs12364336
非常感谢您的回复。
【问题讨论】:
-
似乎将数据存储在数据库中并通过 SQL 查询将是一个很好的解决方案,尤其是在您拥有大量数据的情况下。