列出与第二个文件中的关键字不匹配的整行

列出与第二个文件中的关键字不匹配的整行

我有一个简单的文本文件,其中包含以下格式的 HTML 链接列表:

<a href="https://xxxxxxxx" target="_blank" rel="">This_is_a_test001</a><br />

以及包含关键字列表的第二个文本文件。我想从第一个文件中提取与第二个文件中的任何关键字都不匹配的完整行。我很乐意使用任何工具或脚本语言。

答案1

grep -vFf keywords.txt file.txt

将列出file.txt不包含任何行的行keywords.txt

awk -F '[<>]' '!x{k[$0]; next}; ! ($3 in k)' keywords.txt x=1 file.txt

将列出file.txt在第二次和第三次出现 a<或之间>未找到的部分的行keywords.txt

答案2

您可以使用以下命令来根据要求获取结果

awk 'NR==FNR{a[$1];next}!($1 in a){print $0}' Keyword_file first_file


Keyword_file===> Consists of keyword in first column

当上面的命令与 keywords_file 中存在的任何关键字匹配时,将从first_file 中删除行并显示剩余行

下面是相同的示例

如有任何困惑请告诉我

Example

keyword_file
praveen
ajay
san


first_file

praveen is good
san is bad
abhi is great
kiran is awesome

command: awk 'NR==FNR{a[$1];next}!($1 in a){print $0}' Keyword_file first_file

output

abhi is great
kiran is awesome

相关内容