选择具有另一个文件中列出的 id 字符串组合的文本文件行

选择具有另一个文件中列出的 id 字符串组合的文本文件行

如何仅获取包含 list_of_od_strings.txt file_with_strings_in_lines.xml 给出的字符串的行?

这个问题类似于从文本文件中选择具有在另一个文件中列出的 id 的行到目前为止,我已经得到了一个文件 list_of_od_strings.txt ,其中包含 file_with_strings_in_lines.xml 中存在的字符串。应打印包含这些字符串之一的行。上述问题的第一个文件中的 id 仅包含一个单词。

我这里的情况有所不同,在 ids.csv 中,id 是以连续的两到四个字符串的组合形式给出的,例如“一二 333 四”。

grep -wFf list_of_id_strings.txt file_with_strings_in_lines.xml

给我一个输出,我在其中看到突出显示的 list_of_id_strings.txt 找到的字符串。但是,file_with_strings_in_lines.xml 中没有 list_of_id_strings.txt 字符串的行也会显示。也就是说,我在输出中看到了整个 list_of_id_strings.txt 。

如何仅获取包含 list_of_od_strings.txt file_with_strings_in_lines.xml 给出的字符串的行?

答案1

file_with_strings_in_lines.xml 中没有 list_of_id_strings.txt 字符串的行也会显示

根据评论,我们推断该问题是对说服 grep 输出所有行,而不仅仅是那些匹配的行即您list_of_id_strings.txt至少包含一个空字符串。

-F
    Match using fixed strings.
    [...] A null string shall match every line.

解决方案是从 id 文件中删除所有空字符串。

相关内容