与grep进行文本比较(a.text包含单词,b.txt包含字符串,如果b.txt中的字符串包含来自 - >输出的单词)

时间:2014-03-17 07:21:06

标签: bash grep

简单文本比较:a.txt包含单词,b.txt包含字符串,如果b.txt中的字符串包含a.txt中的单词或单词 - > c.txt(来自b.txt的字符串,而不是来自a.txt的字符)

A.TXT

CREDIT

b.txt

CREDITUNION

源码:

grep -F -o -f b.txt a.txt | sort | uniq > c.txt

由于'CREDITUNION'在c.txt中包含'CREDIT'一词,'CREDITUNION'必须显示......但它不是......

你能告诉我为什么吗?

1 个答案:

答案 0 :(得分:1)

您好像用输入文件翻转了包含模式的文件。

将包含单词的文件指定为-f的参数,将包含字符串的文件指定为grep的输入文件。此外,删除-o选项,否则您会在输出中看到,而不是字符串,例如您会看到CREDIT而不是CREDITUNION

grep -F -f a.txt b.txt | sort | uniq > c.txt