我有一个文件 ( X.txt
),其中包含唯一条目列表。我想使用此文件从grep
另一个文件中Y.txt
提取单个模式的多个条目X.txt
。
X.txt
包含:
A.0
B.0
C.1
D.1
Y.txt
包含:
A.0 10
A.0 11
A.1 10
B.0 18
C.1 5
D.1 19
D.1 36
D.2 51
期望输出:
A.0 10
A.0 11
B.0 18
C.1 5
D.1 19
D.1 36
如果它们是唯一的,那么只需使用就grep -w -f X.txt Y.txt
可以了。但有人能帮我修改grep
以获得所需的输出或使用吗awk
?
答案1
看起来grep -w
没有拾取 A.0 行,因为文件 X.txt 在该行上有尾随空格(违反了 -w 的单词边界要求)。尝试使用“固定字符串模式”标志,-F
grep -Ff X.txt Y.txt
这也是可行的,因为文件已经排序:
join X.txt Y.txt